1

可能重复:
确定 PHP 脚本的命令行与 http 执行的规范方法是什么?

我有时从命令行运行 php 脚本。使用 cron 或其他一次性脚本。

我想知道它是否可以在 php 脚本中确定它是否通过命令行运行?

<?php

$isRunFromCommandLine = // set to (true:false) -- not sure how to do this

if($isRunFromCommandLine){
  echo 'You are running from command line';
}
else{
  echo 'You are not running php via command line'
}

?>
4

2 回答 2

1

我想知道它是否可以在 php 脚本中确定它是否通过命令行运行?

确实。检查php_sapi_name ( ) 的输出,它会告诉你是否在 CLI 模式下运行。

$cli = php_sapi_name( ) === 'cli';
var_dump( $cli );
于 2012-07-04T10:50:43.790 回答
1

如果脚本通过浏览运行,则变量$_SERVER['HTTP_USER_AGENT']将设置,如果它是 vai 终端,则不会设置

if(isset($_SERVER['HTTP_USER_AGENT'])){
   echo "Via browse";
}
else{
   echo "Via terminal";
} 
于 2012-07-04T10:51:04.053 回答