分类目录归档:PHP内核

PHP7和PHP5区别

PHP7比PHP5.0 ~ 5.6快了近5倍,同时还降低了对系统资源的占用。主要是PHP7对Zend引擎进行了深度优化。

之前在书上看到过两者比较全面的区别,回头去翻了翻书【眼过千遍,不如手过一遍啊】,特记录如下。

0、增加抽象语法树(AST)。
PHP5:PHP代码在语法解析阶段直接生成opline指令,执行器直接执行opline指令。
PHP7: PHP代码解析生成抽象语法树,然后将抽象语法树编译成opline指令。解耦编译器和执行器。
继续阅读

PHP生命周期5个阶段

今天准备加入一个PHP内核QQ群,申请条件是回答PHP生命周期的5个阶段,一时间还需要去查。特整理如下

0、模块初始化阶段
PHP框架、Zend引擎初始化操作。入口函数为:php_module_startup()。主要进行操作如下:

  • 启动Zend引擎
  • 初始化垃圾回收器
  • 注册PHP定义的常量:PHP_VERSION等
  • 解析php.ini
  • 注册扩展,包括静态编译的扩展和动态加载的扩展

继续阅读