-1

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

4

3 回答 3

2

想到的第一件事 - 每分钟使用 php 脚本运行一个 cron 作业,该脚本生成随机数,以检查是否运行其余的作业。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';
}
于 2012-05-22T00:48:55.960 回答
1

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

sleep(rand(1, 60));

现在您的脚本将每小时 + 几秒钟执行一次。这是随机的:)

于 2012-05-22T00:56:28.450 回答
1

如果您想在特定时间安排作业,您可以使用“cron”的朋友“ at ”,它将在请求的时间安排脚本。

您只需触发如下命令:

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

yourscript.sh 将在今天 17:00 神奇地运行

于 2012-05-22T01:29:07.827 回答