php面试题

php底层简介

2018-05-11  本文已影响18人  漏诺

applocation

        应用层:这就是我们平时编写的PHP程序

sapi

        服务器端接口:它就是PHP与其它应用交互的接口,PHP脚本要执行有很多种方式,

                            通过Web服务器,或者直接在命令行下,也可以嵌入在其他程序中。

                            SAPI提供了一个和外部通信的接口,常见的SAPI有:cgi 、fast-cgi、cli、isapi、apache 模块的 DLL

extensions

        php扩展:围绕着Zend引擎,extensions通过组件式的方式提供各种基础服务,

                    我们常见的各种内置函数(如array系列)、标准库等都是通过extension来实现,

                    用户也可以根据需要实现自己的extension以达到功能扩展、性能优化等目的

                    (如贴吧正在使用的PHP中间层、富文本解析就是extension的典型应用)。

zend:

        zend引擎:Zend整体用纯C实现,是PHP的内核部分,它将PHP代码翻译(词法、语法解析等一系列编译过程)

                    为可执行opcode的处理并实现相应的处理方法、实现了基本的数据结构(如hashtable、oo)、

                    内存分配及管理、提供了相应的api方法供外部调用,是一切的核心,所有的外围功能均围绕Zend实现。

    应用层的php代码 调用  php扩展(mysql、mysqli、array 等函数) 通过  sapi接口链接zend引擎  进行编译

    打个比喻:一辆在道路上高速行驶的汽车  

                     汽车壳子是:应用层php代码

                     汽车配件防护轮胎是:php扩展

                     道路是:sapi接口

                     发动机是:zend引擎

上一篇下一篇

猜你喜欢

热点阅读