如何连续运行PHP和/或CodeIgniter函数

如何连续运行PHP和/或CodeIgniter函数,php,mysql,curl,codeigniter-2,foursquare,Php,Mysql,Curl,Codeigniter 2,Foursquare,我正在一个基于位置的社交网站上工作,在那里我集成了。我使用了foursquare登录,每当用户使用他的foursquare帐户登录时,我都会使用它来获取他的访问令牌,我会从foursquare帐户获取他的所有数据,这个帐户非常大,需要花费很多时间。这就是为什么我要寻找一个解决方案,将检索的四方数据不断循环 有没有办法持续运行codeIgniter或PHP函数来更新所有用户的数据而不是像使用cronjob那样更新数据调度基础,它应该像我运行函数一样运行,它将无限期地运行,不会停止 注: 我正在使用

我正在一个基于位置的社交网站上工作,在那里我集成了。我使用了foursquare登录,每当用户使用他的foursquare帐户登录时,我都会使用它来获取他的访问令牌,我会从foursquare帐户获取他的所有数据,这个帐户非常大,需要花费很多时间。这就是为什么我要寻找一个解决方案,将检索的四方数据不断循环

有没有办法持续运行codeIgniter或PHP函数来更新所有用户的数据
而不是像使用cronjob那样更新数据调度基础,它应该像我运行函数一样运行,它将无限期地运行,不会停止

注:

我正在使用
CURL
从foursquare获取数据


提前谢谢

您需要的是对PHP进程进行daemonize,我以前做过这件事,老实说,我不记得我用过什么,但快速谷歌搜索给了我机会

我可以告诉你的是,对于这类事情,PHP不是一个好的选择。我遇到了大量的问题,这些问题与PHP进程一直在工作这一事实直接相关。最终,我将其改写为Java(和)

您还可以查看作业服务器,例如众所周知的Gearman()。这里是Gearman PHP库


我个人使用过这类任务(因为任务可以调度,也可以手动触发)。

您可以编写一个简单的PHP脚本,如下面所示,通过在cron作业中调度来运行该脚本,然后在该脚本运行后,删除cron选项卡(该脚本将继续运行):

希望能有帮助

while (true)
{
    // Setup your CURL request for foursquare
    // Fire the CURL request and get the results
    // do the processing
    // You can probably put a sleep here before it again   loops
    // Here is the magic to break the infinite loop - check a
    // variable from database table or from some ini file and break the loop
    // if the variable is set
}