以php7.1.0为例

一、php新特性

1.编译安装

下载路径

  1. 安装包目录解析

zend:核心代码目录
sapi:sapi目录
ext:扩展目录
configure:编辑文件
./configure -h > test // 输出配置项到文件中,便于查看
./configure —prefix=/home/codes/php/php-7.1.0/output/ —enable-fpm —enable-debug
make && make install

2.性能基准测试方法

分别执行不同版本下的Zend/bench.php和Zend/micro_bench.php,观察测试结果

3.php7和php5性能的对比

一、2执行结构

4.php7新语法特性

二、基础变量与内存管理

基础变量

1.zval基本机构

2.字符串(zend_string)的实现,写时复制等

3.引用类型(zend_reference)

4.数组类型(zend_array/HashTable)

内存管理

1.small/large/huge内存
2.内存对齐
3.内存类型标记

三、php运行的生命周期

1.CLI模式
2.FPM模式
3.FastCGI协议
4.网络编程、信号、多进程编程

四、php代码的编译与执行

1.词法、语法分析的基本原理
2.抽象语法树(AST)
3.zend虚拟机
4.执行过程

五、基础语法实现的细节

1.各种基础语法的实现

六、扩展编写