理解如果检查PHILE_CLI_MODE


understanding if check on PHILE_CLI_MODE

我正在浏览PhileCMS的代码,看到了下面这行代码:

if (PHILE_CLI_MODE) {
        $_SERVER['REMOTE_ADDR'] = (isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : '127.0.0.1';
}

现在什么是PHILE_CLI_MODE和这个变量是从哪里来的,我没有看到它在脚本中声明HERE

谁能告诉我这个变量是从哪里来的?

谢谢。

它被设置在lib/Phile/Bootstrap.php,第79行

defined('PHILE_CLI_MODE')   or define('PHILE_CLI_MODE',  (php_sapi_name() == "cli") ? true : false);

它不是一个变量,它是在lib/Phile/Bootstrap.php中定义的常量

defined('PHILE_CLI_MODE')   or define('PHILE_CLI_MODE',  (php_sapi_name() == "cli") ? true : false);

这个文件每次都包含在根索引中。

require_once __DIR__ . '/lib/Phile/Bootstrap.php';

常数PHILE_CLI_MODE表示在php_sapi_name()的帮助下,如果Phile是通过命令行(CLI =命令行界面)或通过web浏览器(那么它是FALSE)运行。

最后,如果通过命令行运行Phile并且没有设置$_SERVER['REMOTE_ADDR'],则$_SERVER['REMOTE_ADDR']设置为127.0.0.1 (=localhost)