10

...またはその逆に、phpスクリプトがWebサーバー内で実行されているかどうかを知る方法はありますか?

4

4 に答える 4

36

http://www.php.net/manual/en/function.php-sapi-name.php

function is_cli()
{
    return php_sapi_name() === 'cli';
}
于 2009-03-03T17:43:55.087 に答える
7

通常、CLI モードで実行している場合、スーパーグローバル$argv$argcが設定され、通常のコンテンツ$_SERVER(リクエスト メソッドなど) の多くは利用できません。さらに、、、などの事前定義されたコンソール ストリームSTDINSTDOUTセットアップSTDERRされます。

于 2009-03-03T17:41:50.270 に答える
3

次のような $_SERVER 変数を確認できます。

$_SERVER['SERVER_ADDR']

Web サーバー経由で実行されない場合、これは空になります。

于 2009-03-03T17:42:21.707 に答える