Date (класс)

Класс date предназначен для работы с датами. Возможные варианты использования - календари, всевозможные проверки, основывающиеся на датах и т.п.

Диапазон возможных значений
- от 01.01.1970 до 01.01.2038 года.
- от 00.00.0000 до 31.12.9999 года.   [3.4.4]

Не забывайте, что в нашем календарном времени есть разрывы и нахлесты: во многих странах принято так-называемое «летнее» время, когда весной часы переводят вперед, а осенью назад.
Скажем, в Москве не бывает времени «02:00, 31 марта 2002», а время «02:00, 27 октября 2002» бывает дважды.

Числовое значение объекта класса
date равно числу суток с EPOCH (01.01.1970 00:00:00, UTC) до даты, заданной в объекте. Этим значением полезно пользоваться для вычисления относительной даты, например:

# проверка "обновлен ли файл позже, чем неделю назад?"
^if($last_update > $now-7){
   новый
}{
   старый
}

Число суток может быть дробным, скажем, полтора дня =
1.5.

Обычно класс оперирует локальными датой и временем, однако можно узнать значение хранимой им даты/времени в произвольном часовом поясе, см.
^date.roll[TZ;…].

Для общения между компьютерами, работающими в разных часовых поясах, удобно обмениваться значениями даты/времени, не зависящими от пояса - здесь очень удобен UNIX формат, представляющий собой число секунд, прошедших с EPOCH.

Форматы Unix и ISO 8601 можно использовать в JavaScript и ряде других языков сценариев, работающих в браузере.

Parser полностью поддерживает работу с UNIX форматом дат.


User comments:

Misha v.3 15.02.2008 00:43

Для работы с датами расширенного диапазона можно попробовать воспользоваться следующим классом:
http://www.parser.ru/examples/cdate/


In order to add comments you must register.
Copyright © 1997–2016 Art. Lebedev Studio | http://www.artlebedev.ru Дата обновления: 05.01.2016