使用用户定义dtime创建一个cron作业

时间:2015-02-03 07:18:55

标签: php linux amazon-web-services cron crontab

我想创建一个cron作业,该作业将与用户在数据库中定义时间一起运行。 例如,用户可以在数据库中设置开始时间和结束时间。当达到结束时间时,我希望cron触发一个脚本来发送邮件。首先,是否有可能在cron或我必须采用一些不同的方法?这一切都将在AWS EBS上完成。 以下是我在本地机器上尝试发送一个过于简单的简单邮件

*/1 * * * * /usr/bin/php -q/var/www/html/cronTry/cron.php

2 个答案:

答案 0 :(得分:2)

您不希望每分钟运行CRON,而是为您的用户创建一个特定的作业并运行一次。这样的事情应该有效(未经测试 - 在移动设备上)

$your_users_date;
$cmd = "sudo crontab -l | { cat; echo ". date("i H d m",strtotime($your_users_date))." * php /path_to_your_script.php arg1 arg2; } | crontab -";
shell_exec($cmd);

这将在您的用户定义

时将作业附加到crontab

答案 1 :(得分:1)

从数据库中获取动态详细信息,创建命令字符串和

您可以通过在shell_exec()

中传递命令轻松运行您的cron