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开发语言
<html>
<head> </head>
<php
php>
</html>
php和apache的结合方式:1、 1个php进程响应1个请求
CGI
2、 1个httpd进程通过加载php模块,在进程内响应php请求
MOD
3、 架设php服务器启动php空闲进程,apache作为客户端,响应php请求。
phtp5.4及以上fpm
FASTCGI
Nginx+fpm