PHP – Сравнение времени

Я работаю над веб-приложением Calendar / Planner, и мне нужно сравнить время начала и окончания событий, прежде чем я их сохраню в своей БД. Событие может иметь только один день и между 8 утра и полуночью. Время начала всегда должно быть выполнено до окончания времени.

Значения post приходят из формы в следующем формате hh:mm:ss ( 12:14:00 ) и т. Д., Поэтому я могу хранить их в своей базе данных без особых хлопот. Есть ли способ сравнить эти времена?

Большое спасибо!

Если эти времена находятся в базе данных, будет работать оператор сравнения базы данных. Например:

 SELECT * FROM table WHERE time < NOW() 

В PHP самый простой способ сравнить время – это преобразовать их в метки времени, а затем сравнить временные метки как целые числа. Вы можете использовать strtotime для этого преобразования.

Например:

 $time1 = "08:00:00"; $time2 = "09:00:00"; if (strtotime($time1) > strtotime($time2) || strtotime($time1) < strtotime("08:00:00")) { ... } 

Если вы используете PHP 5.3, вы можете использовать метод diff () для объектов DateTime, чтобы получить разницу между двумя датами. Но также можно делать только временные метки (1 день = 86400 секунд)