English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Руководство по функциям даты и времени PHP
Функция strptime() парсирует дату/время, созданную strftime()
strptime()Функция принимает строку даты (согласно созданнойstrftime() и строку формата в качестве параметров, и парсирует заданную строку в указанном формате.
strptime($date, $format)
Номер | Параметры и их описание |
---|---|
1 | date(обязателен) Это строка, которая представляет дату для анализа. |
2 | format(обязательный) Это строковое значение, представляющее собой формат, используемый для анализа даты. |
PHP функция strptime() возвращает массив, содержащий проанализированную дату (массив, полученный после парсинга date). Если функция не успешна, она возвращает булево значениеfalse. Возвращаемый массив содержит следующие ключи и минус
tm_min - количество минут в текущем часе (0-59)
tm_hour - количество часов с полуночи (0-23)
tm_mday - день месяца (1-31)
tm_mon - количество месяцев, прошедших с января (0-11)
tm_year - количество лет, прошедших с 1900 года
tm_wday - количество дней, прошедших с воскресенья (0-6)
tm_yday - количество дней, прошедших с 1 января текущего года (0-365)
unparsed - часть даты, которую не удалось распознать с помощью указанного формата
Эта функция была введена в PHP версии 5.1.0 и может использоваться во всех более высоких версиях.
Следующие примеры демонстрируютstrptime()Использование функции -
<?php $format = '%A %d %B %G %T'; $strf = strftime($format); $res = strptime($strf, $format); print_r($res); ?>Проверим, посмотрим‹/›
Результат вывода
Array ( [tm_sec] => 26 [tm_min] => 35 [tm_hour] => 15 [tm_mday] => 13 [tm_mon] => 4 [tm_year] => 0 [tm_wday] => 3 [tm_yday] => 132 [unparsed] => )
<?php $format = '%d/%m/%Y %H:%M:%S'; $strf = strftime($format); echo "\n"; print_r(strptime($strf, $format)); ?>Проверим, посмотрим‹/›
Результат вывода
08/06/2020 09:10:32 Array ( [tm_sec] => 32 [tm_min] => 10 [tm_hour] => 9 [tm_mday] => 8 [tm_mon] => 5 [tm_year] => 120 [tm_wday] => 1 [tm_yday] => 159 [unparsed] => )
Вот различные символы для форматирования даты/времени с помощью strftime
%a - Краткое имя дня недели
%A - Полное имя дня недели
%b - Краткое имя месяца
%B - Полное имя месяца
%c - Предпочтительный формат даты и времени
%C - Число века (год делится на 100, диапазон от 00 до 99)
%d - День месяца (01 до 31)
%D - Формат времени, как и %m/%d/%y
%e - День месяца (1 до 31)
%g - Как и формат %G, но без millennium
%G - Четырёхзначный год, соответствующий ISO неделе (смотрите %V)
%h - Как и формат %b
%H - Часы в 24-часовом формате (00 до 23)
%I - Часы в 12-часовом формате (01 до 12)
%j - День года (001 до 366)
%m - Месяц (01 до 12)
%M - Минуты
%n - Перенос строки
%p - am или pm для соответствующего времени
%r - Формат времени a.m. и p.m.
%R - Формат времени в 24-часовом формате
%S - Секунды
%t - Tab
%T - Текущее время, как и формат %H:%M:%S
袀исловое представление дня недели (1 до 7), Monday[понедельник] = 1. Предупреждение: в системе Sun Solaris Sunday[воскресенье] = 1
%U - Количество недель в году, начиная с первого воскресенья, как первой недели
%V - Количество недель в году в формате ISO 8601 (01 до 53), первая неделя года
%W - Количество недель в году, начиная с первого понедельника, как первой недели
%w - Десятичное число дня в неделе, Sunday[воскресенье] = 0
%x - Предпочтительный формат даты без времени
%X - Предпочтительный формат времени без даты
%y - Годовое число без millennium-формата (диапазон от 00 до 99)
%Y - Годовое число, представляющее год в millennium-формате
%Z или %z - Название или аббревиатура часового пояса
%% - Вывести символ %