比如Linux命令行执行一段PHP代码,其实是Linux shell通过PHP SAPI传入一组参数,zend引擎执行后返回给shell。在PHP生命周期的各个阶段,一些与服务相关的操作都是通过SAPI接口实现。 php_sapi_name()可以查看当前SAPI接口的类型。 如cli(php -r "echo php_sapi_name();")、fpm-fcgi等 2. PHP运行和加载的4个阶段 ...
php_sapi_name( void ) 复制 php_sapi_name() 返回描述 PHP 所使用的接口类型(the Server API, SAPI)的小写字符串。 例如,CLI 的 PHP 下这个字符串会是 "cli",Apache 下可能会有几个不同的值,取决于具体使用的 SAPI。 以下列出了可能的值。 参数...
PHP通过SAPI提供了一组接口,供应用和PHP内核之间进行数据交互。 简单的讲,就像函数的输入和输出一样,我们通过Linux命令行执行一段PHP代码,本质是Linux的Shell通过PHP的SAPI传入一组参数,Zend引擎执行后,返回给shell,由shell显示出来的过程。同样的,通过Apache调用PHP,通过Web服务器给SAPI传入数据,Zend引擎执行后,返回给...
PHP_SAPI php判断解析php服务是由那种服务器软件,是采用那种协议 直接输出即可 代码如下: 1 2 3 4 5 <?php echo PHP_SAPI; ?> 如果测试环境是nginx+fastcgi 输出结果为: cgi-fcgi 如果是apache 运行环境,输出结果为 apache2handler 如果是命令行的形式执行,结果为 cli...
本文链接:http://www.orlion.ml/234/ 1、在PHP生命周期的各个阶段,一些与服务相关的操作都是通过SAPI接口实现。这些内置实现的物理位置在PHP源码的SAPI目录。这个目录存放了PHP对各个服务器抽象层的代码,例如命令行程序的实现,Apache的mod_php模块实现以及fastcgi的实现等等 在各个服务器抽象层之间遵守着相同的约定,...
本文链接:http://www.orlion.ml/234/ 1、在PHP生命周期的各个阶段,一些与服务相关的操作都是通过SAPI接口实现。这些内置实现的物理位置在PHP源码的SAPI目录。这个目录存放了PHP对各个服务器抽象层的代码,例如命令行程序的实现,Apache的mod_php模块实现以及fastcgi的实现等等 在各个服务器抽象层之间遵守着相同的约定,...
SAPI,特意去查了一下,它是Server Application Programming Interface的首字母缩写,意思是服务器端应用编程接口。 这是PHP 内核提供给外部调用其服务的接口,即外部系统可以通过 SAPI 来调用 PHP 提供的编译脚本、执行脚本的服务。PHP 中实现的 SAPI 有很多,Cli、Fpm是我们比较常见的。
php_sapi_name():string|false 返回描述 PHP 所使用的接口类型(the Server API, SAPI)的小写字符串。 例如,CLI 的 PHP 下这个字符串会是 "cli",Apache 下可能会有几个不同的值,取决于具体使用的 SAPI。 以下列出了可能的值。 返回值 返回接口类型的小写字符串, 或者在失败时返回false。
PHP 常量PHP_SAPI具有和php_sapi_name() 相同的值。 1define('IS_CGI',(0 ===strpos(PHP_SAPI,'cgi') ||false!==strpos(PHP_SAPI,'fcgi')) ? 1 : 0);2define('IS_WIN',strstr(PHP_OS, 'WIN') ? 1 : 0);3define('IS_CLI',PHP_SAPI=='cli'? 1 : 0); ...