У меня есть таблица «уведомлений», которые могут быть отправлены или не отправлены в любой 24-часовой период. Каждое уведомление имеет собственное смещение часового пояса от GMT
, поэтому у меня есть столбец для смещения, который будет +/- в секундах.
Мне нужно создать PHP-скрипт, который будет регулярно (via cron)
проверять базу данных на наличие отправленных уведомлений, а затем сбрасывать их на неотправленные, если их время прошло 00:00 для этого дня. Я действительно борюсь с лучшим способом сделать это - есть ли простой расчет, который я могу сделать?
Я думал о том, чтобы получить время UNIX для полуночи сервера с помощью mktime() [мой сервер находится в GMT] и вычислить его со смещением в секундах, но все, что я думаю, кажется неправильным.
Что-то типа:
if(!mktime()-$notifcationTimezone > $serverMidnight){}
Я не говорю, что это не работает, но я не думаю, что это сработает, когда сервер перейдет в другой день. Это просто смущает меня, и я не верю в это.