我需要在特定时间自动执行PHP脚本。我将如何实现这一目标?
答案 0 :(得分:27)
如果您正在运行Linux / Unix(包括Mac OSX),create a cron job。
如果您正在运行Windows create a scheduled task。
注意:以上两个链接都与PHP受众群体有关。
答案 1 :(得分:17)
如果使用crontab -e手动编辑crontab或者使用crontab -l列出它,则会在crontab顶部放置一个有用的注释。
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
30 3 * * * php /home/scripts/do_something.php
答案 2 :(得分:6)
我假设您正在创建某种Web应用程序,并且您需要系统的一部分定期运行某些内容,因此无法通过浏览器运行。如果您正在加载大量第三方库或使用大量服务器功能,那么这样做有点棘手,但如果它是直接PHP,您可以非常轻松地完成。创建某种运行命令php -f filename.php
的某种计划作业(Linux上的cron作业,Windows上的计划任务等)。这将通过CLI PHP解释器执行您选择的PHP脚本,这与PHP脚本通过CGI执行的方式非常相似(可能相同),但是减去了一些特定于服务器的环境变量。
答案 3 :(得分:2)
答案 4 :(得分:1)
如果您不使用Linux / Unix,请询问您的主机是否可以为您设置Windows预定作业。根据您是否可以通过一些主机支持部门的丛林,他们应该感到高兴,因为它不一定带来安全风险