使用算法发送cron作业?

时间:2012-05-22 00:42:19

标签: php cron

我正在使用php的网站。是否可以在算法定义的时间发送cron作业?我可以在控制台中添加这样的功能,还是从我的PHP脚本发送它?我还没有用过cron。

3 个答案:

答案 0 :(得分:2)

首先想到的是 - 每分钟运行一个cron作业,使用php脚本生成随机数,以检查是否运行其余的工作。 crontab中的这一行将每分钟运行一次cron作业(用你的路径替换路径)

*/1 * * * * /usr/bin/php /path/to/job.php

或者,如果你不能直接调用php,你可以使用curl或wget那样的

*/1 * * * * /usr/bin/curl --silent --compressed http://yoursite.com/job.php

在你的php文件中,做任何你想要检查是否有时间运行剩下的工作,如:

if(rand(1, 60)==1)
{
 include 'the_actual_job.php';
}

答案 1 :(得分:1)

例如,将PHP脚本设置为每小时执行一次。然后在脚本顶部添加此代码

sleep(rand(1, 60));

现在你的脚本将每小时+几秒钟执行。它是随机的:)

答案 2 :(得分:1)

如果您想在特定时间安排工作,可以使用“cron”的朋友“at”,这将按照要求的时间安排脚本。

您只需触发如下命令:

$reqtime = '17.00'
system('at -f yourscript.sh ' . $reqtime);

yourscript.sh将在今天17.00神奇地运行