Доброго времени! Пробую сверить время в формате ЧЧ:ММ есть функция которая через str_replace вырезает из текущего времени формата Y-m-d H:i:s (2017-12-02 17:08:11) и записывает его в переменную $new. Дальше требуется проводить сравнения вроде:
if ($new >= "13:00" && $new <= "15:45") {
//операции
}
но сравнение идет не корректно как я понял из-за того что время сравнивается в формате строк. Можно ли как то сравнить что бы не было глюков? но очень надо что бы сравнивались именно часы без указания более точных дат, может какое то временное преобразование часов в более полную дату а затем сравнивать уже. Но главное приоритетно что бы в конструкциях if else указывалось именно время в формате часы-минуты
Вот еще вариант функции
<?php
function isBetween($hi, $st, $end) {
$hi = strtotime($hi);
$st = strtotime($st);
$end = strtotime($end);
if ($st < $end) {
return $st <= $hi && $hi <= $end;
} else {
return (strtotime('00:00') <= $hi && $hi <= $end)
|| ($st <= $hi && $hi <= strtotime('23:59'));
}
}
var_dump(isBetween('08:01', '08:00', '17:00'));
var_dump(isBetween('07:59', '17:00', '08:00'));
var_dump(isBetween('17:00', '17:00', '08:00'));
var_dump(isBetween('23:59', '17:00', '08:00'));
var_dump(isBetween('07:59', '08:00', '17:00'));
var_dump(isBetween('07:60', '08:00', '17:00'));
var_dump(isBetween('16:59', '17:00', '08:00'));
var_dump(isBetween('24:00', '17:00', '08:00'));
var_dump(isBetween('24:00', '08:00', '17:00'));
Результат
bool(true)
bool(true)
bool(true)
bool(true)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
Тест http://sandbox.onlinephpfunctions.com/code/d4580648fe605c1cb4544f5cbb30a9b01455e727
На вход функция ждет строки в формате HH:MM. Если хотите с секундами, то в функции нужно дописать к 23:59 хвостик :59.
Возвращает true если:
$hi находится между $st и $end, при $st < $end$hi <= $st или $hi >= $end, при $st >= $endP.S. Используете на свой страх и риск.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости