php 函数

PHP常量PHP_SAPI与函数php_sapi_name()简介,

PHP运行环境检测

PHP_SAPI 用来判断是使用命令行还是浏览器执行的,如果 PHP_SAPI==’cli’ 表示是在命令行下执行

 

php判断解析php服务是由那种服务器软件,是采用那种协议 直接输出即可

代码如下:

<?php

echo PHP_SAPI;

?>

我的测试环境是nginx+fastcgi 输出结果为:

cgi-fcgi

 

error_get_last()----返回最后发生的错误:

 

 

 

 

 

如果是apache 运行环境,输出结果为

apache2handler

如果是命令行的形式执行,结果为

cli

这就是PHP_SAPI

php_sapi_name() 是用来检测PHP运行环境的函数。

该函数返回一个描述PHP与WEB服务器接口的小写字符串。

返回描述 PHP 所使用的接口类型(the Server API, SAPI)的小写字符串。
例如,CLI 的 PHP 下这个字符串会是 “cli”,Apache 下可能会有几个不同的值,取决于具体使用的 SAPI。
以下列出了可能的值:
aolserver、apache、 apache2filter、apache2handler、 caudium、cgi (直到 PHP 5.3), cgi-fcgi、cli、 continuity、embed、 isapi、litespeed、 milter、nsapi、 phttpd、pi3web、roxen、 thttpd、tux 和 webjames。

SAPI: 服务器端API,貌似和CGI是一个东西。每个服务器提供的API可能不同,但是他们都提供了CGI。
所以可以理解CGI是每个服务器都应该有的SAPI。apache有自己的SAPI,IIS也有自己的。但是php能在这些不同的服务器端工作,因为php支持了它们各自的SAPI。
PHP-CLI: php命令行接口,php可以工作在这种模式下也可以CGI模式。是SAPI的一种,它和CGI提供的功能差不多。

php官方文档 :http://php.net/manual/zh/reserved.constants.php

php官方文档 :http://php.net/manual/zh/reserved.constants.php

+++++++++++++++++++++++++++++++++++++++++++++++++++

如何判断PHP的运行环境?

阅读ci代码过程中发现,处理URI会根据php的运行环境进行不用处理。

 

 

 

原文地址:https://www.cnblogs.com/hehexu/p/8256835.html