我有一个共同的脚本,我包括在我的PHPcron文件和通过浏览器访问的文件.代码的某些部分,我只需要非cron文件.如何检测执行是来自CLI还是通过浏览器(我知道可以通过传递一些带有cron文件的参数来完成,但我无法访问crontab).还有其他方法吗?
我正在使用以下命令通过cron执行PHP文件
php -q /home/seilings/public_html/dvd/cron/mailer.php
Run Code Online (Sandbox Code Playgroud)
问题是我有一个包含在执行中的文件,用于确定要加载哪个配置....如下所示:
if (!strstr(getenv('HTTP_HOST'), ".com")) {
$config["mode"] = "local";
} else {
$config["mode"] = "live";
}
Run Code Online (Sandbox Code Playgroud)
当应该加载LIVE配置时,cron正在加载LOCAL配置.我尝试使用http:// URL到文件而不是绝对路径,但它没有找到该文件.我是否需要更改命令才能使用其中的URL?