DateTime::format
DateTimeImmutable::format
DateTimeInterface::format
date_format
(PHP 5 >= 5.2.1, PHP 7)
DateTime::format -- DateTimeImmutable::format -- DateTimeInterface::format -- date_format — Возвращает дату, отформатированную согласно переданному формату
Описание
Объектно-ориентированный стиль
$format
) : string$format
) : string$format
) : stringПроцедурный стиль
Возвращает строку даты, преобразованной согласно переданному формату.
Список параметров
-
object
-
Только для процедурного стиля: Объект DateTime, возвращаемый date_create()
-
format
-
Шаблон результирующей строки (string) с датой. См. параметры форматирования ниже. Также существует несколько предопределенных констант даты/времени, которые могут быть использованы вместо этих параметров. Например:
DATE_RSS
заменяет шаблон'D, d M Y H:i:s'
.В параметре format
распознаются следующие символыСимвол в строке format
Описание Пример возвращаемого значения День --- --- d
День месяца, 2 цифры с ведущим нулём от 01
до31
D
Текстовое представление дня недели, 3 символа от Mon
доSun
j
День месяца без ведущего нуля от 1
до31
l
(строчная 'L')Полное наименование дня недели от Sunday
доSaturday
N
Порядковый номер дня недели в соответствии со стандартом ISO-8601 от 1
(понедельник) до7
(воскресенье)S
Английский суффикс порядкового числительного дня месяца, 2 символа st
,nd
,rd
илиth
. Применяется совместно сj
w
Порядковый номер дня недели от 0
(воскресенье) до6
(суббота)z
Порядковый номер дня в году (начиная с 0) От 0
до365
Неделя --- --- W
Порядковый номер недели года в соответствии со стандартом ISO-8601; недели начинаются с понедельника Например: 42
(42-я неделя года)Месяц --- --- F
Полное наименование месяца, например, January или March от January
доDecember
m
Порядковый номер месяца с ведущим нулём от 01
до12
M
Сокращенное наименование месяца, 3 символа от Jan
доDec
n
Порядковый номер месяца без ведущего нуля от 1
до12
t
Количество дней в указанном месяце от 28
до31
Год --- --- L
Признак високосного года 1
, если год високосный, иначе0
.o
Номер года в соответствии со стандартом ISO-8601. Имеет то же значение, что и Y
, кроме случая, когда номер недели ISO (W
) принадлежит предыдущему или следующему году; тогда будет использован год этой недели.Примеры: 1999
или2003
Y
Порядковый номер года, 4 цифры Примеры: 1999
,2003
y
Номер года, 2 цифры Примеры: 99
,03
Время --- --- a
Ante meridiem (лат. "до полудня") или Post meridiem (лат. "после полудня") в нижнем регистре am
илиpm
A
Ante meridiem или Post meridiem в верхнем регистре AM
илиPM
B
Время в формате Интернет-времени (альтернативной системы отсчета времени суток) от 000
до999
g
Часы в 12-часовом формате без ведущего нуля от 1
до12
G
Часы в 24-часовом формате без ведущего нуля от 0
до23
h
Часы в 12-часовом формате с ведущим нулём от 01
до12
H
Часы в 24-часовом формате с ведущим нулём от 00
до23
i
Минуты с ведущим нулём от 00
до59
s
Секунды с ведущим нулём от 00
до59
u
Микросекунды. Учтите, что date() всегда будет возвращать 000000
, т.к. она принимает целочисленный (int) параметр, тогда как DateTime::format() поддерживает микросекунды, если DateTime создан с ними.Например: 654321
v
Миллисекунды (добавлено в PHP 7.0.0). Замечание такое же как и для u
.Пример: 654
Временная зона --- --- e
Идентификатор временной зоны Примеры: UTC
,GMT
,Atlantic/Azores
I
(заглавная i)Признак летнего времени 1
, если дата соответствует летнему времени,0
в противном случае.O
Разница с временем по Гринвичу без двоеточия между часами и минутами Например: +0200
P
Разница с временем по Гринвичу с двоеточием между часами и минутами Например: +02:00
p
То же, что и P
, но возвращаетZ
вместо+00:00
Например: +02:00
T
Аббревиатура временной зоны Примеры: EST
,MDT
...Z
Смещение временной зоны в секундах. Для временных зон, расположенных западнее UTC возвращаются отрицательные числа, а расположенных восточнее UTC - положительные. от -43200
до50400
Полная дата/время --- --- c
Дата в формате стандарта ISO 8601 2004-02-12T15:19:21+00:00 r
Дата в формате » RFC 2822 Например: Thu, 21 Dec 2000 16:01:07 +0200
U
Количество секунд, прошедших с начала Эпохи Unix (1 января 1970 00:00:00 GMT) Смотрите также time() Любые другие символы, встреченные в строке-шаблоне, будут выведены в результирующую строку без изменений.
Z
всегда возвращает0
при использовании gmdate().Замечание:
Поскольку рассматриваемая функция принимает в качестве параметра временные метки типа int, форматирующий символ
u
будет полезен только при использовании функции date_format() и пользовательских меток времени, созданных с помощью функции date_create().
Возвращаемые значения
Возвращает строку с отформатированной датой в случае успешного выполнения.
Список изменений
Версия | Описание |
---|---|
8.0.0 |
До этой версии, в случае возникновения ошибки возвращалось false .
|
Примеры
Пример #1 Пример использования DateTime::format()
Объектно-ориентированный стиль
<?php
$date = new DateTime('2000-01-01');
echo $date->format('Y-m-d H:i:s');
?>
Процедурный стиль
<?php
$date = date_create('2000-01-01');
echo date_format($date, 'Y-m-d H:i:s');
?>
Результат выполнения данного примера:
2000-01-01 00:00:00
Примечания
Данный метод не использует настройки локали. Вывод производится на английском языке.
Смотрите также
- date() - Форматирует вывод системной даты/времени