Codeigniter - 创建手动调度程序

时间:2015-01-08 20:16:40

标签: php codeigniter cron scheduled-tasks

我想在Codeigniter中创建一个调度程序,如21:24和#34;这个"记录应该更新。

我搜索了很多,但最终的答案是创建一个cron工作。

我可以在Codeigniter中动态创建cron作业吗?

实际上我正在考虑创建一个方法将继续检查的类:

  1. 时间。
  2. 要更新的任何内容。
  3. 如何最有效地创建此类功能,因为请求可能来自n个用户随机时间来在不同时间执行特定工作?

2 个答案:

答案 0 :(得分:1)

我不会动态创建cron作业。

相反,我会有一个脚本通过cron每分钟调用一次(每10分钟一次......)并将所有作业存储在数据库中,并且应该运行它们。

然后在您的脚本中,您可以检查数据库并查看是否有任何需要在此时间或最后一次检查之间或现在之间运行的作业。

答案 1 :(得分:0)

要从PHP创建CRON作业,请使用exec命令。这应该有效(未经测试,在移动设备上)

exec(crontab -l | { cat; echo "0 0 0 0 0 php your_php_script.php"; } | crontab -);

或者,如果您想更好地为我们安排一份工作,请在' at'命令。