Функция PHP strtotime()
Пример
Преобразование английских текстовых даты и времени в временной штамп Unix:
<?php echo(strtotime("now") . "<br>"); echo(strtotime("15 October 1980") . "<br>"); echo(strtotime("+5 hours") . "<br>"); echo(strtotime("+1 week") . "<br>"); echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "<br>"); echo(strtotime("next Monday") . "<br>"); echo(strtotime("last Sunday")); ?>
Определение и использование
Функция strtotime() преобразует любую английскую текстовую дату или время в временной штамп Unix (число секунд с 01 января 1970 00:00:00 GMT).
Внимание:Если год указан в двухзначном формате, значения 0-69 будут соответствовать периоду 2000-2069, а значения 70-100 - периоду 1970-2000.
Внимание:Пожалуйста, обратите внимание на формат даты m/d/y или d-m-y. Если разделитель - косая черта (/), используйте американский формат m/d/y. Если разделитель - дефис (-) или точка (.), используйте европейский формат d-m-y. Чтобы избежать потенциальных ошибок, как можно чаще используйте формат YYYY-MM-DD или функцию date_create_from_format().
Синтаксис
strtotime(time,now);
Параметры | Описание |
---|---|
time | Обязателен. Определяет строку даты/времени. |
now | Опционально. Определяет временной штамп, используемый для вычисления возвращаемого значения. Если параметр опущен, то используется текущее время. |
Технические детали
Возвратное значение: | Если успешна, то возвращает временной штамп, если失败了, то возвращает FALSE. |
---|---|
Версия PHP: | 4+ |
Журнал обновлений:
5.3.0: | Теперь относительные временные форматы, такие как "эта неделя", "предыдущая неделя", "上周", "следующая неделя", определяют неделю с понедельника по воскресенье, а не 7 дней до/после текущей даты/времени. |
5.3.0 | До PHP 5.3.0 24:00 не былvalidным форматом, и strtotime() возвращает FALSE. |
5.2.7 | В предыдущих версиях, если запрашивалась дата в месяце и она была первой датой этого месяца, то ошибочно добавлялась неделя к возвращаемому времени戳у, что теперь исправлено. |
5.1.0 | Если失败了, то возвращает FALSE (в предыдущих версиях возвращает -1), и добавлены ошибки времени зоны E_STRICT и E_NOTICE. |
5.0.2 | Теперь правильное вычисление "now" и других относительных временных интервалов производится от текущего времени, а не от полуночи текущего дня. |
5.0.0 | Разрешены микросекунды (но их значения обычно игнорируются). |
4.4.0 | До PHP 4.4 "next" ошибочно вычислялся как +2. Обычное решение - использовать "+1". |