PHP扩展开发及内核应用

1.1 让我们从SAPI开始

我们平时接触的最多的是web模式下的php,当然你也肯定知道php还有个CLI模式。 其实无论哪种模式,PHP的工作原理都是一样的, 都是作为一种SAPI在运行(Server Application Programming Interface: the API used by PHP to interface with Web Servers)。当我们在终端敲入php这个命令时候,它使用的是"command line sapi"!它就像一个mini的web服务器一样来支持php完成这个请求,请求完成后再重新把控制权交给终端。

简单来说, SAPI就是PHP和外部环境的代理器。它把外部环境抽象后, 为内部的PHP提供一套固定的, 统一的接口, 使得PHP自身实现能够不受错综复杂的外部环境影响,保持一定的独立性

更多内容参看来自Laruence的博客对SAPI的介绍: 深入理解Zend SAPIs