我有一个PHP脚本,需要在每个工作日的特定时间运行。是cron
还是Windows任务调度程序执行此操作的唯一方法?
有没有办法从另一个PHP脚本中设置它?每天在特定时间执行PHP脚本有哪些选项?
回答
取决于时间的精确程度。我见过的一种技术(被称为“穷人的克朗”)是让一个经常访问的脚本(例如一个站点的主页)在一定时间后在第一页加载时触发一个任务(保持跟踪数据库)。
如果您需要任何有保证的准确性,但cron或Windows计划任务确实是最佳选择。如果你的主机不支持它们,现在是时候获得更好的了。
我会说完全一样的东西;没有什么比这更好的了。 +1 – 2009-06-12 01:37:48
克朗当然是迄今为止在* nix上安排任何事情的最佳方式。
您可能想要使用cron(或windows计划任务)。
如果你真的想要,你可以设置另一个PHP脚本连续运行一个无限循环(在循环中有一个睡眠命令,比如说30秒左右),然后当你达到你想要的日期/时间执行另一个脚本通过shell命令调用。尽管可能,但我不能认为是否有一个很好的理由使用这种方法而不是使用cron /预定任务
你可以编写一个长时间运行的脚本,在预定义的时间运行你的主脚本,但这将是非常不必要的,错误倾向于,它将基本上是“phph重写”。
使用真正的cron本身会更容易和更强大的解决方案。如果您正在打包应用程序,则可以在/etc/cron.d中放置一个文件,其中包含运行应用程序的单个cron行。
除了cron
或Scheduled Tasks
,您可以让您的PHP脚本始终运行它。进程应该睡眠(在循环内)直到时间到达。然后,该过程可以执行其余的功能/方法。或者,您可以设置另一个脚本(它将作为守护进程)来检查时间并执行其他脚本。
您需要使用cron作业(Linux/Unix下)或Windows下的计划任务。您可以可能有连续运行的另一个脚本,它会检查时间并以指定的时间间隔执行脚本,但使用操作系统提供的机制更易于管理并且可以重新启动等。
既然web是一种拉动机制,你必须有某种动作来触发PHP脚本才能执行。 cron是Windows *上的* nix和任务调度程序的一个选项。你也可以编写自己的服务,它有一个计时器,但只有在需要的时候,这在Windows服务更新,作业等方面很常见。
你可以这样做的一种方法是在cron任务中调用每个php脚本行动需要。或者一个执行其他任务的php脚本。基于web的任务虽然如PHP的问题是超时。确保你的任务不到60-90秒。如果不是的话,你可能会考虑使用python,perl或ruby甚至是bash脚本来完成这项工作,而不是PHP脚本。
cron似乎是你最好的选择。你将不得不用wget调用你的脚本。这里有例子:http://www.thesitewizard.com/general/set-cron-job.shtml
例如这个运行在11脚本日常生活:
30 11 * * * /usr/bin/wget http://www.example.com/cron.php
PHP可以在命令行上运行,这将避免超时问题。 – ceejayoz 2009-06-12 01:44:28
如果这是一个远程服务器,你不必,你可以设置的cron/Windows调度上的cron访问您的计算机打开一个网页浏览器到包含您希望运行的脚本的页面
在cron不可接受的环境中,统一服务器项目在mimicking cron上有一些很好的建议。尽管如此,如果cron完全是一种选择,那就使用它。
- 1. 每天在特定时间执行一些代码
- 2. 每天在特定GMT时间执行函数每天
- 3. 在不同的时间每天执行一个php脚本
- 4. Python使脚本每天在特定时间运行
- 5. 每天用wordpress执行php脚本
- 6. 自动安排在特定时间执行php脚本
- 7. 强制线程在特定时间每天执行操作
- 8. 如何在特定时间每天执行代码?
- 9. android日程安排任务在特定时间每天执行
- 10. 在特定时间执行php脚本(时间将从数据库中获取)
- 11. 确定哪个PHP脚本执行特定的mysql查询
- 12. 每天在固定的时间用crontab运行python脚本
- 13. 是否有可能知道在http请求期间执行哪些php脚本?
- 14. Python脚本在特定的时间间隔执行C程序
- 15. 在特定时间执行选择器
- 16. 让php脚本每天独立运行一段时间?
- 17. 仅在特定时间运行脚本
- 18. 在特定时间运行perl脚本
- 19. 更多时间来执行php脚本
- 20. 在特定时间内延迟执行jQuery脚本。 。
- 21. 如何在特定时间停止执行.sh脚本?
- 22. 如何让这个Python脚本在特定时间执行?
- 23. 如何在特定时间后停止我的脚本执行
- 24. 每天消防UILocalNotification,但每天在特定时间
- 25. 如何在特定的时间,每天晚上执行代码在Asp.net网站
- 26. 在每个php脚本之前执行php脚本?
- 27. PHP脚本在一定时间后未执行
- 28. 如何在特定时间每天删除缓存项目
- 29. 在特定时间每天自动执行java jar的最佳方式
- 30. 如何编程Java应用程序以在特定时间每天执行?
这正是cron所使用它的意义所在。 – rojoca 2009-06-12 01:41:16