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

Create a cron job with user define dtime

我想创建一个 cron 作业,它将 运行 由用户在数据库中定义时间。 对于 eg.User 可以在数据库中设置开始时间和结束时间。当达到结束时间时,我希望 cron 触发一个脚本来发送所有的 mail.First 是否可以在 cron 中或者我必须去一些不同的方法?而这一切都将在 AWS EBS 上完成。 下面是我在我的本地机器上尝试发送一封简单的邮件,它太基本了

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

从数据库获取动态细节,创建命令字符串和

您可以通过在 shell_exec()

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

您不希望每分钟 运行 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