我正在寻找一些建议。
现在我已经有了一堆我通过cron安排的PHP脚本。它们在我的本地机器上运行,例如从mysql数据库中提取东西并发送自动电子邮件。要运行它们,我在crontab中只有这样的内容:0 7 * * 1 /usr/bin/php /phpscripts/script.php
我需要将所有这些脚本迁移到Windows计算机。我打算使用Windows任务计划程序来运行脚本,但是如何在本地运行实际的PHP脚本?根据我的理解,你需要像xampp这样的东西来运行apache服务器?我想我需要的是在crontab中等效于/ usr / bin / php的Windows。
答案 0 :(得分:0)
将您的任务设置为在您需要时运行(时间和全部)
并将其弹出到command
:
C:\Path\to\php.exe -f "C:\Path\to\file.php"
编辑:您还可以设置第二个php.ini,以便在使用CLI运行文件时运行,该文件对最大执行时间等没有限制。非常方便的差异,更适合运行(可能)长的执行脚本。
您可以通过在php-cgi.ini
文件所在的PHP文件夹中创建php.ini
文件来执行此操作。当从CLI执行PHP文件时,这将自动使用(这是计划任务的运行方式)。
另请注意,Windows Scheduler只会以导致脚本崩溃的错误结束,因此如果脚本提前退出,运行一些额外的日志记录可能是个好主意。
答案 1 :(得分:0)
安装PHP
您不必安装xammp
,您可以单独安装PHP,看看Windows PHP安装指南:
如果您更喜欢安装XAMP,可以在使用php.exe
标志找到-f
后运行PHP脚本:
C:\Xampp\php\php.exe -f C:\Xampp\htdocs\my_script.php
运行PHP文件
安装完PHP后,请检查Command Line PHP on Microsoft Windows manual以获取有关如何运行脚本的信息。在页面上有解释如何使php文件可执行,所以你可以运行它:
"C:\PHP Scripts\script" -arg1 -arg2 -arg3
确保使用管理帐户运行该命令。否则您可能会遇到权限问题。有关Introduction to using PHP on the command line
的更多信息安排任务
转到Start -> Programs -> Accessories -> System Tools -> Scheduled Tasks
,
C:\ PHP \ php.exe“C:\ Inetpub \ wwwroot \ blogs \ cron \ cron_exec.php”