我有一个php文件,其中包含运行一些冗长数据库操作的类。该文件包含在其他一些脚本中,但我希望能够从命令行调用该文件在另一个程序中或作为crontab的一部分,以便它可以在后台运行更长的进程。
有没有办法检测从命令行调用文件,这样我就可以运行一个实例化对象并执行它的函数?
答案 0 :(得分:2)
使用php_sapi_name()确定PHP正在使用的接口。如果它是命令行,则返回'cli',如果是其他任何内容,则返回特定的名称字符串。
if (php_sapi_name() == 'cli') {
echo 'Executing from the command line';
} else {
echo 'Likely executing via a web server';
}