PHP每隔X分钟执行一次操作

时间:2013-03-15 08:29:38

标签: php api

我制作了一个PHP脚本,可以从twitter获取推文并将其保存到文件中以供使用(作为JSON)。 问题是我在执行脚本时只获得了一次推文,但我希望每4-5分钟得到一次。

我查看了sleep,但这只会延迟浏览器并执行一次操作。 我希望每> 4分钟执行一次,而不是在延迟后执行一次。

我查看了cron,但是我要运行我的应用程序的服务器不允许我使用cron。

TL; DR:有人知道在第一次执行后每隔X分钟执行一次php脚本的好方法吗?

5 个答案:

答案 0 :(得分:2)

最好的办法是安排一个任务每x分钟调用一次PHP页面,而不是试图保持一个线程打开。看看CRON JOB

如果您公开访问该页面,则不需要从服务器执行计划任务。

答案 1 :(得分:1)

您可以设置一个Web监控服务(有些是免费的,比如Pingdom),每隔X分钟就会向您的页面发出一个HTTP请求,这应该可以解决问题。

答案 2 :(得分:1)

有些提供商除了为您提供cron作业外什么都不提供。看看他们,他们可以每x分钟调用你的PHP脚本。

答案 3 :(得分:0)

如果没有使用cron,你所做的一切都是黑客攻击。

可以

while (1) {
  process(...)
  sleep(4*60)
}

但是你会遇到PHP执行时间限制的问题。

也许让你的脚本执行一次操作并让它每4分钟从一个支持cron的主机调用它是一个选项?

答案 4 :(得分:0)

我自己设法解决了这个问题。 正如我的问题所述,Javascript和Jquery也是可行的解决方案。 我每隔X分钟使用setInterval在我的twitter.php文件上执行$ .get。