Я хочу создать задание cron, которое будет работать с пользователем, определяющим время в базе данных. Для eg.User может установить время начала и время окончания в базе данных. Когда достигнуто конечное время, я хочу, чтобы cron запускал один скрипт для отправки почты. Прежде всего, возможно ли это в cron или мне нужно пойти с каким-то другим подходом? и все это будет сделано на AWS EBS. Ниже я попытался на своей локальной машине просто отправить простое письмо, которое является слишком простым
*/1 * * * * /usr/bin/php -q/var/www/html/cronTry/cron.php
Вы не хотите запускать 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 в то время, когда ваш пользователь определил
Получить динамические данные из базы данных, создать командную строку и
Вы можете легко запустить свой cron, передав команду в shell_exec()