如何使用CGI-FCGI检测是否在CLI模式下 [英] How to detect if in CLI mode with cgi-fcgi

查看:435
本文介绍了如何使用CGI-FCGI检测是否在CLI模式下的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

php_sapi_name()收益的CGI-FCGI 在CLI和Web:(

php_sapi_name() returns cgi-fcgi in both CLI and web :(

有没有来检测,如果脚本在命令行模式下当前运行时PHP与FCGI运行的任何可靠的方法?

Is there any reliable way to detect if the script is current running in command line mode when PHP is running with fcgi?

编辑:NVM。事实证明,我不得不运行 PHP-CLI 可执行笑

edit: nvm. it turns out I had to run the php-cli executable lol

推荐答案

检查 $ _ SERVER $ _ ENV 超全局数组。

尝试 $ _ SERVER ['REMOTE_ADDR'] 或$ _ SERVER ['ARGC']。

Try $_SERVER['REMOTE_ADDR'] or $_SERVER['argc'].

我找到了一个很好的答案形式<一个href=\"http://stackoverflow.com/a/12654906/1197702\">http://stackoverflow.com/a/12654906/1197702

I found a good answer form http://stackoverflow.com/a/12654906/1197702

function drupal_is_cli() {
  return (!isset($_SERVER['SERVER_SOFTWARE']) && (php_sapi_name() == 'cli' || (is_numeric($_SERVER['argc']) && $_SERVER['argc'] > 0)));
}

这篇关于如何使用CGI-FCGI检测是否在CLI模式下的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆