IF time >=0800<=1700 (
DO NOTHING
) ELSE (
RUN CODE
)
Перво-наперво, в остальном вам не нужно, иначе только в порядке, в псевдокоде:
IF time < 0800 OR TIME > 1700
RUN CODE
Следующее, что нужно знать, будет то, как проверить текущее время, есть много способов сделать это, поэтому давайте подумаем, какой из них будет лучшим.
Мы заботимся только о часах и минутах, поэтому давайте возьмем их.
$hourNow = date('H'); // $hour now is a string but we'd rather have it as an integer for better comparison.
$hourNow = (int) $hourNow; // this will cast, for example "15" to 15
$minuteNow = (int) date('i'); // as you can see you can do casting and getting a minute value at once
Теперь, когда у нас есть вся необходимая информация, ее легко написать:
if ($hourNow < 8 || ($hourNow === 17 && $minuteNow > 0) || $hourNow > 17) {
// Do whatever you need in this case.
}
Условие довольно простое: если час меньше 8 - мы знаем, что это до 8 часов.
Если это> 17, это, очевидно, позже.
А если это 17, это своего рода крайний случай, как это может быть 17:00 - поэтому нам нужно указать, что минута больше 0.
Надеюсь, это поможет, не стесняйтесь спрашивать, если что-то не ясно.