我正在使用php的网站。是否可以在算法定义的时间发送cron作业?我可以在控制台中添加这样的功能,还是从我的PHP脚本发送它?我还没有用过cron。
答案 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神奇地运行