使用Windows任务计划程序运行PHP脚本,包括文件失败

myzjeezk  于 2023-01-24  发布在  PHP
关注(0)|答案(1)|浏览(148)

我有一台安装了XAMPP的Windows 2012R2机器。我需要安排一个每分钟运行一次的任务。每分钟都应该执行一个PHP脚本。如果配置正确,我将使用一个.BAT文件作为任务计划程序中的操作。
问题是当我测试.BAT文件时,它就像一个符咒(从文件夹中执行.BAT文件)。但是当任务调度程序执行.BAT文件时,它失败了。脚本无法包含PHP脚本调用的一些文件。我猜这是因为任务调度程序不从PHP脚本所在的. CronjobBase目录执行脚本。php具有包括MyIncludes.php的行(示例性地,在真实的生活中包括引导文件)
这是我的.BAT内容(在CD命令中使用或保留引号没有区别):

cd "D:\xampp\htdocs\MyApp\App\Cronjobs\"
"D:\xampp\php\php.exe" -f CronjobBase.php MyCronJob

我尝试用CD进入Cronjobs文件夹以MyCronJob的形式执行CronjobBase.php(其中应该包括来自CronjobBase.php的MyCronJob.php)。它告诉我没有找到CronjobBase.php。我猜CD进入Cronjobs文件夹失败了。
当我尝试将"D:\xampp\php\php.exe" -f D:\xampp\htdocs\MyApp\App\Cronjobs\CronjobBase.php MyCronJob作为.BAT内容时,包含'MyIncludes.php'失败,脚本终止。
有什么建议我做错了什么吗?

vlju58qv

vlju58qv1#

这应该行得通:

cd /D "D:\xampp\htdocs\MyApp\App\Cronjobs\"
"D:\xampp\php\php.exe" -f CronjobBase.php MyCronJob

或:

D:
cd "D:\xampp\htdocs\MyApp\App\Cronjobs\"
"D:\xampp\php\php.exe" -f CronjobBase.php MyCronJob

相关问题