1.php源码下的几个次要目录:

SAPI、main、Zend、ext.SAPI是PHP的利用接口层.main是PHP的次要代码,次要是输出/输入、Web通信、PHP的初始化操作(比方fastcgi协定的解析、扩大的加载、PHP配置的解析等)等,它位于ZendVM的上一层.Zend是PHP解析器的次要实现,即ZendVM,它是PHP语言的外围实现,PHP代码的解释、执行就是由Zend实现的.ext是PHP的扩大目录.TSRM是线程平安相干的实现.

2.PHP的根本形成:

1)SAPI

罕用的两个SAPI是Fpm和Cli.SAPI层是整个PHP框架的最外层,不同的SAPI适配不同的环境(比方命令行、web等),次要负责框架的初始化工作.如果SAPI是一个独立的应用程序(比方cli或fpm),那么main函数也定义在SAPI中.

2)ZendVM

ZendVM是一个虚构计算机,它介于PHP利用与理论计算机之间,咱们编写的PHP代码就是被它解释执行的.它次要由两局部组成:编译器、执行器.    编译器负责将PHP代码解释为执行器可辨认的指令.    执行器负责执行编译器解释进去的指令.ZendVM等价于Java中的JVM,他们都是形象进去的虚构计算机.

3)Extension

扩大是PHP内核提供的一套用于补充PHP性能的形式.扩大分为PHP扩大和Zend扩大.    PHP扩大比拟常见.    Zend扩大次要利用于ZendVM,Opcache就是Zend扩大.