php -f script.php param1 param2
目前,我只是在检查是否isset($argv)
。这是最好的方式吗?
P.S。
我还想知道所有输入参数是否始终存储在$argv
?
答案 0 :(得分:1)
你可以在这里阅读Is there any way to know if a php script is running in cli mode?,你可以使用这个功能:
function is_cli()
{
return php_sapi_name() === 'cli';
}
答案 1 :(得分:0)
检查是否设置了REQUEST_METHOD
:
/**
* Check if the site is being visited (in a browser) or run as a program from the
* commandline.
* @return boolean true if the request appears to come from the WWW, false if not.
*/
function is_web_request () {
return isset($_SERVER['REQUEST_METHOD']);
}