ParseDateTime
Описание и параметры
mixed ParseDateTime( string datetime, string format = FORMAT_DATETIME );
Разбивает дату и время на части в соответствии с заданным форматом. Функция возвращает массив описывающий дату и время в соответствии с заданным форматом, если произошла ошибка - возвращает "false".
Параметры функции
Параметр | Описание |
---|---|
datetime | Дата и время заданные в соответствии с форматом указанным в параметре format. |
format | Формат даты и времени. Вы можете использовать любые обозначения, но желательно использовать символы формата даты и времени допустимые в системе, а именно:
|
Смотрите также
Примеры использования
<? $datetime = "21.01.2004 23:44:15"; $format = "DD.MM.YYYY HH:MI:SS"; echo "Исходное время: ".$datetime."<br>"; echo "Формат: ".$format."<hr>"; if ($arr = ParseDateTime($datetime, $format)) { echo "День: ".$arr["DD"]."<br>"; // День: 21 echo "Месяц: ".$arr["MM"]."<br>"; // Месяц: 1 echo "Год: ".$arr["YYYY"]."<br>"; // Год: 2004 echo "Часы: ".$arr["HH"]."<br>"; // Часы: 23 echo "Минуты: ".$arr["MI"]."<br>"; // Минуты: 44 echo "Секунды: ".$arr["SS"]."<br>"; // Секунды: 15 } else echo "Ошибка!"; ?>
<? // выведем дату в формате вида "21 января, 2004" $datetime = "21.01.2004"; // дата задана в формате текущего сайта // FORMAT_DATETIME - константа содержащая формат времени текущего сайта $arr = ParseDateTime($datetime, FORMAT_DATETIME); // 21 января, 2004 echo $arr["DD"]." ".ToLower(GetMessage("MONTH_".intval($arr["MM"])."_S")).", ".$arr["YYYY"]; ?>
<? // вывод даты активности элемента информационного блока // в произвольном формате // подключим модуль информационных блоков if (CModule::IncludeModule("iblock")) { // выберем произвольный элемент информационного блока $rsElement = CIBlockElement::GetByID(32675); $arElement = $rsElement->Fetch(); // получим дату активности выбранного элемента // выбранную в соответствии с форматом времени текущего сайта $date_active = $arElement["ACTIVE_FROM"]; // 28.01.2005 // получим формат времени текущего сайта $site_format = CSite::GetDateFormat(); // DD.MM.YYYY HH:MI:SS // получим массив описывающий дату активности выбранного элемента if ($arr = ParseDateTime($date_active, $site_format)) { /* структура полученного массива $arr: Array ( [DD] => 28 [MM] => 1 [YYYY] => 2005 [HH] => 0 [MI] => 0 [SS] => 0 ) */ // переведем дату активности в Unix-формат $stmp = mktime( $arr["HH"], $arr["MI"], $arr["SS"], $arr["MM"], $arr["DD"], $arr["YYYY"] ); // выведем дату активности выбранного элемента в произвольном виде // с помощью стандартной PHP функции date echo date("d F Y", $stmp); // 28 January 2005 } } ?>
Олег Постоев
|
||
Вероятно, есть ошибка в примере. Ключ MM не возвращает "1", будет "01".
Что бы получить значение месяца без ведущего нуля можно использовать такое выражение:
| ||
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.