php的内核原理
php的内核组成模块和运行原理
php 三大模块的 理解:
1.php内核:其功能是用来处理 (请求,文件流,错误) 等相关操作。
2.zend引擎:将php文件转为机器语言,然后在虚拟机上运行。
3.扩展层:函数、类库、流。php可以加载扩展实现一些特定操作。
推荐:《php教程》
三者关系:
zend执行程序时候需要连接若干扩展,
它将控制权交由扩展层,
等扩展层处理完毕,
将结果返还给zend。
最终zend将程序运行结果返回给php内核。
php内核再将结果传给sapi层。
最终输出到浏览器。
php设计理念及特点:
多进程模型:由于php是多进程模型,不同请求间互不干涉,这样保证了一个请求挂掉不会对全盘服务造成影响,当然,随着时代发展,php也早已支持多线程模型。
弱类型语言:和c/c++、java、c#等语言不同,php是一门弱类型语言。一个变量的类型并不是一开始就确定不变,运行中才会确定并可能发生隐式或显式的类型转换,这种机制的灵活性在web开发中非常方便、高效,具体会在后面php变量中详述。
引擎(zend)+组件(ext)的模式降低内部耦合。
中间层(sapi)隔绝web server和php。
语法简单灵活,没有太多规范。缺点导致风格混杂。
以上就是php的内核原理的详细内容。