我制作了一个PHP脚本,从twitter获取tweet并将它们保存到一个文件中以供使用(作为JSON)。问题是,当我执行脚本时,我只得到tweet一次,但我想每4-5分钟得到一次。
我已经研究过sleep
,但这只是延迟浏览器并执行一次操作。我希望每 4分钟执行一次,而不是在延迟后只执行一次。
我也研究了cron,但是我要运行我的应用程序的服务器不允许我使用cron。
有人知道在第一次执行后每隔X分钟执行一次php脚本的好方法吗?最好的办法是安排一个任务每隔x分钟调用一次PHP页面,而不是试图保持一个线程打开。看一下CRON JOB。
如果您使页面可公开访问,则不需要从服务器执行计划任务。
你可以设置一个网络监控服务(有些是免费的,比如Pingdom),每隔X分钟向你的页面发出一次HTTP请求,这应该能做到。
有些提供程序除了为您运行cron作业之外什么都不提供。看看它们,它们可以每隔x分钟调用一次你的php脚本。
在没有cron的情况下,你所做的一切都是一个hack。
You could go
while (1) {
process(...)
sleep(4*60)
}
但是你会遇到php执行时间限制的问题。
也许这是一个选项,让你的脚本做一次动作,并从一个cron-capable主机调用它每4分钟?
我自己解决了这个问题。正如我的问题所述,Javascript和Jquery也是可行的解决方案。我使用setInterval
来执行$。每隔十分钟访问一次我的twitter.php文件