用PHP玩转进程之二 — 多进程PHPServer

经过 用 PHP 玩转进程之一 — 基础 的回顾复习,我们已经掌握了进程的基础知识,现在可以尝试用 PHP 做一些简单的进程控制和管理,来加深我们对进程的理解。接下来,我将用多进程模型实现一个简单的 PHPServer,基于它你可以做任何事。 …

用PHP玩转进程之一 — 基础

我们工作中接触最多的就是 进程,但是我们对它又比较陌生,因为它是业务不需要关心的地方,既有的公有组件和操作系统已经对我们屏蔽了它的复杂性。然后跟它的接触时间一长,我们难免会对它产生好奇:How it works? …

深入源码剖析PHP-FPM

原文:https://github.com/pangudashu/php7-internal/blob/master/1/fpm.md FPM(FastCGI Process Manager)是 PHP FastCGI 运行模式的一个进程管理器,从它的定义可以看出,FPM 的核心功能是进程管理,那么它用来管理什么进程呢?这个问题就需要从 FastCGI 说起了。…

在Docker中使用Xdebug

我们经常会使用 PhpStorm 结合 Xdebug 进行代码断点调试,这样能追踪程序执行流程,方便调试代码和发现潜在问题。博主将开发环境迁入 Docker 后,Xdebug 调试遇到了些问题,在这里整理出 Docker 中使用 Xdebug 的方法和注意事项。 …

身份证的编码规则

在我国现行的身份证系统中共有 15 位和 18 位两种身份证号码,第一代身份证大多为 15 位号码,由于 15 位身份证只能为 1900.01.01 到 1999.12.31 出生的人编码(千年虫问题),所以后来逐步替换为 18 位的身份证号码。 …

APP接口多版本处理

在开发 APP 端 API 接口时,随着 APP 的版本迭代,尽管通常 APP 只需要保持 4-5 个版本可用,过老版本会强制更新,但 API 接口避免不了出现多个版本的情况,那么 API 接口的多版本问题服务端怎么解决呢? …

curl时设置Expect的必要性

curl 在项目中使用频率较高,比如内部接口、第三方 api、图片存储服务等,但是我们在使用 curl 时可能并没有注意到 Expect 这个请求头信息,而 Expect 设置不正确,会导致不必要的一次 HTTP 请求,甚至可能会导致业务逻辑错误。…

Yii支持多域名cors原理

平常我们遇到跨域问题时,常使用 cors(Cross-origin resource sharin)方式解决。不知你是否注意到,在设置响应头 Access-Control-Allow-Origin 域的值时,只允许设置一个域名,这意味着不能同时设置多个域名来共享资源。而在 Yii2 中直接使用'Origin' => ['http://www.site1.com', 'http://www.site2.com']的形式却可以设置多个 cors 域名值,Why?…

从foreach方法引出的PHP内存分析

原文:链家产品技术团队 PHP 代码中 Foreach 结构随处可见,我们在使用时,是否了解其行为呢?我们这篇文章通过一些例子来分析下 Foreach 结构的内存行为。如果你想了解 PHP 内存相关的内容,不妨把这篇文章作为一个参考。 …

PHP定时脚本的那些事

在项目中,经常会遇到定时任务的情景,当然这不仅仅只是将 PHP 文件结合 crontab 这么简单。其中有一些我遇到的非 code 层面的问题,在这里列举出来。 …