PHP脚本如何检测它是作为脚本还是从shell调用的?
我在Web服务器上有一个PHP脚本 此文件由另一个程序通过shell调用,但它仍然可以由Web服务器运行以响应HTTP请求PHP脚本如何检测它是作为脚本还是从shell调用的?,php,shell,scripting,invoke,Php,Shell,Scripting,Invoke,我在Web服务器上有一个PHP脚本 此文件由另一个程序通过shell调用,但它仍然可以由Web服务器运行以响应HTTP请求 脚本如何确定调用它的方式?有很多方法;我检查$\u服务器['HTTP\u主机]是否为空。我认为技术上正确的方法是查看php\u sapi\u name()是否返回cli如果它是从shell执行的,那么它就没有HTTP头,因为它不是从HTTP协议请求的。有一些环境变量可以检查。比如说 祝你好运我编写了许多在shell和web上下文中同时运行的应用程序, 这一行使它很容易 fu
脚本如何确定调用它的方式?有很多方法;我检查
$\u服务器['HTTP\u主机]
是否为空。我认为技术上正确的方法是查看php\u sapi\u name()
是否返回cli
如果它是从shell执行的,那么它就没有HTTP头,因为它不是从HTTP协议请求的。有一些环境变量可以检查。比如说
祝你好运我编写了许多在shell和web上下文中同时运行的应用程序, 这一行使它很容易
function isWEB()
{
return $GLOBALS['argc']===NULL;
}
是的,那可能是最好的办法。
function isWEB()
{
return $GLOBALS['argc']===NULL;
}