Классы DateTime, DateInterval и т. Д. Недоступны на используемом мной сервере (PHP 5.2)
Какие функции я должен использовать вместо этого?
Если вы посмотрите на страницы руководства PHP для DateTime и DateInterval , вы можете увидеть, какая версия требуется для определенной функции прямо под именем метода, например
DateInterval :: createFromDateString
(PHP 5> = 5.3.0)
указывает, что этот метод доступен на PHP5.3.
Как уже указывалось в других ответах, некоторые из методов DateTime (но не DateInterval) уже регулярно доступны с 5.2. В качестве альтернативы вы можете использовать обычные функции Date . Обратите внимание, что многие функции с префиксом date_
и timezone_
– это псевдонимы для соответствующих OOP-аналогов в DateTime
и DateTimezone
, поэтому вы не сможете их использовать, если вы не можете их использовать сейчас.
Если вы хотите использовать OO lib для дат, посмотрите Zend_Date
или PEAR_Date
.
DateTime является частью ядра PHP 5.2; однако 5.3 добавили еще несколько методов, которые не были доступны в 5.2
С другой стороны, DateInterval представляется уникальным для PHP 5.3.
Вы уверены, что DateTime недоступен? Вы уверены, что используете PHP 5.2?
Попробуйте вызвать class_exists('DateTime')
и phpversion()
Примечание. Экспериментальная поддержка DateTime в PHP 5.1.x Хотя класс DateTime (и связанные функции) включен по умолчанию с PHP 5.2.0,> можно добавить экспериментальную поддержку в PHP 5.1.x, используя следующий флаг перед настройкой / компилировать: CFLAGS = -DEXPERIMENTAL_DATE_SUPPORT = 1
Как можно прочитать на php.net. DateTime должен быть доступен на 5.2.0
Вот ссылка на функции даты / времени, которые вы можете использовать.