PHP脚本每天运行几次没有CRON?

时间:2011-02-01 15:44:19

标签: php cron

喂! 我正在寻找一些方法可以帮助我完成这样的任务: 编写一个每2天清除XML文件内容的函数。没有CRON或类似的工具,只需PHP。 到目前为止,我从未做过与时间相关的运行脚本,所以有没有办法只使用PHP? 我假设函数所做的一切都是没有用户注释,所以我尝试函数sleep(),但我认为必须有更好的解决方案。 有人知道如何帮助我吗?

9 个答案:

答案 0 :(得分:4)

在每个请求检查文件的修改或创建日期。 如果当前时间减去文件时间超过2天 - 删除文件或清除内容。

这种情况下的请求是分辨率差的时钟。通常,检查文件时间(stat)是非常快速的操作。

答案 1 :(得分:1)

有些服务会在给定时间调用您的脚本。

ONLINE CRON SERVICES

答案 2 :(得分:1)

您可能希望将脚本作为守护程序运行。 PEAR的System_Daemon类管理了很多这个功能。您可以查看http://kevin.vanzonneveld.net/techblog/article/create_daemons_in_php/以获取有关如何设置守护程序的详细教程。

Cron对于定时任务显然更好,但如果cron确实不可用,这可能是一个选项。

答案 3 :(得分:0)

如果没有Cron或打开浏览器,我不确定这是可能的吗?

答案 4 :(得分:0)

让脚本sleep()停留2天不是个好主意。使用webcron

答案 5 :(得分:0)

当没有cronjobs的原因是,您无法在服务器上定义cronjobs时,也许您可​​以在另一台(本地)计算机上调用脚本,该计算机每隔一天发出一次触发PHP脚本的HTTP请求?

答案 6 :(得分:0)

如果您的脚本执行速度很快,您可以使用“基于用户的cron”。

- 你保存了最后一次执行时间 - 每个访问者触发对上次执行时间的检查 - 如果执行时间超过定义的持续时间,则执行脚本

如果您的脚本不需要精确的执行时间并且执行起来非常快(触发执行的用户不应受到影响),那么这可能是一个很好的解决方案。

答案 7 :(得分:0)

这将每2天为您运行一次脚本(或指定天数) http://www.phpjobscheduler.co.uk/

答案 8 :(得分:0)

您可以使用MySQL数据库或文件here安排作业。

当cron作业不可用或未配置时,WordPress也使用相同的方法。