Лучший способ работать с таймпансами? - PullRequest
3 голосов
/ 27 августа 2009

Есть ли предпочтительный класс или метод для работы с временными панелями в PHP? Основная функция, которая меня интересует, - это проверка того, находится ли дата в промежутке времени, или генерация временных отметок для нижнего и верхнего пределов.

Ответы [ 5 ]

5 голосов
/ 27 августа 2009

использовать метку времени Unix. Если это данные MySQL, то вы можете хранить метки времени, как это, если нет, то вы также можете конвертировать даты MySQL в Unix.

На сайте php.net имеется множество документации по функциональности, относящейся к этому, но все это относительно просто и удобно.

Удачи.

3 голосов
/ 27 августа 2009

Существует также класс DateTime , который полезен для работы со временем.

1 голос
/ 31 августа 2009

По моему опыту (в основном, системам сбора данных о времени), отсутствие надлежащей библиотеки поддержки "Span" приводит к появлению ошибок из окна.

Мой совет: создайте класс Span, предусмотрите его для обработки инклюзивных и эксклюзивных конечных точек с самого начала. Часто очень важно иметь возможность создавать пролеты с различной семантикой включения: январь = диапазон (1/1, 31/1) = диапазон (1/1, 1/2 (, ....

)
1 голос
/ 27 августа 2009

Я предпочитаю использовать метки времени Unix, затем вы можете проверить

if($time > $lower && $time < $upper)
  echo $time is inside bounds
0 голосов
/ 27 августа 2009

Определенно отметка времени Unix, если ваши пролеты никогда не пересекают ее границы (с 1970/01/01 по 2037/03 / xx). Если вам никогда не нужно знать длину интервала (сколько дней между 2009/03/05 и 2009/08/22?), Тогда строки в формате ГГГГММДДЧЧММСС (или других аналогичных форматах) работают так же легко, чтобы определить, является ли дата и время между двумя другими значениями даты и времени.

...