喂! 我正在寻找一些方法可以帮助我完成这样的任务: 编写一个每2天清除XML文件内容的函数。没有CRON或类似的工具,只需PHP。 到目前为止,我从未做过与时间相关的运行脚本,所以有没有办法只使用PHP? 我假设函数所做的一切都是没有用户注释,所以我尝试函数sleep(),但我认为必须有更好的解决方案。 有人知道如何帮助我吗?
答案 0 :(得分:4)
在每个请求检查文件的修改或创建日期。 如果当前时间减去文件时间超过2天 - 删除文件或清除内容。
这种情况下的请求是分辨率差的时钟。通常,检查文件时间(stat)是非常快速的操作。
答案 1 :(得分:1)
有些服务会在给定时间调用您的脚本。
答案 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也使用相同的方法。