php:动态脚本语言


php source code---->opcode(2进制)----->zend引擎执行

php执行php脚本的步骤

1、scanning:将php代码转换为语言片段tokens

2、parsing:将tokens转换为有意义的表达式

3、compilation:将表达式转换为opcode

4、execution:顺序执行

php的加速器

Xcache


php源码目录结构

build:跟源码编译相关的文件,如环境检测脚本,builtconf。

ext:官方扩展目录,包含了绝大多数php函数及实现

main:php的核心文件,是实现php的基础设施。

zend:zend引擎的实现目录,比如脚本的语法分析,词法分析,opcode的执行,扩展机制的实现。

pear:php的扩展应用仓库。

sapi:包含了服务器抽象层的代码,如apache的mod_php,cgi、fastcgi和fpm等接口

TSRM:线程安全资源管理器。

tests:php的测试脚本集合。


嵌入式web开发语言

     


php>


php和apache的结合方式:1、 1个php进程响应1个请求

                     CGI

               2、 1个httpd进程通过加载php模块,在进程内响应php请求

                     MOD

               3、 架设php服务器启动php空闲进程,apache作为客户端,响应php请求。 

                  phtp5.4及以上fpm

                     FASTCGI

Nginx+fpm