Я давно застрял в этой проблеме. Мое задание - установить crontab для автоматического закрытия сервера «EVERYDAY» для обслуживания. Однако, если «конец» - это перерыв в полночь в этот день, я не знаю, как проверить сравнение. Вот некоторые примеры:сравнение текущего времени, если время до полуночи
// if i want to stop the server from 20:00 and to start it at 23:00, i would code like this
$current_time = date('Gi'); // for example: 1730
$start_time = 2000;
$end_time = 2300;
if ($current_time >= $start_time && $current_time <= $end_time){
echo "Server is close"; // simple to compare
}
else {
echo "Server is open"; // simple to compare
}
я знаю, что это достаточно просто для каждого, однако, если сценарий является то, что я хочу, чтобы закрыть его с 20:00 до 01:00, я застрял на нем
$current_time = date('Gi'); // for example: 2130
$start_time = 2000;
$end_time = 0100;
Как я могу установить сравнение if..else на время, если оно пересечет полночь? Спасибо за вашу помощь ...
может быть лучше подход использовать UnixTime –
одну деталь я должен еще раз отметить, является то, что, время устанавливается, чтобы быть каждый день, просто Менеджер проектов просит меня отключить сервер каждый день с 23:00 до 02:00, если он попросит меня установить его с 20:00 до 23:00, я могу справиться с этим, однако я не имею понятия, обрабатывать кросс-полуночный выпуск – user2173445
Как вы можете видеть, это длится через два дня, поэтому в основном ваше время окончания должно быть «+1 день 02: 00», или вы можете добавить свой «+1 день», если конечное время меньше времени начала. – core1024