Содержание

PHP: DateTimeInterface::format — Manual

День
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
X Расширенное полное числовое представление года, не менее 4 цифр, с - для годов до нашей эры и + для годов нашей эры. Примеры: -0055
, +0787, +1999, +10191
x Расширенное полное числовое представление, если требуется или стандартное полное числовое представление, если возможно (например, Y). Не менее четырёх цифр. Для годов до нашей эры указан префикс -. У годов после (и включая) 10000 префикс +. Примеры: -0055, 0787, 1999, +10191
YПолное числовое представление года, не менее 4 цифр, с - для годов до нашей эры. Примеры: -0055, 0787, 1999, 2003, 10191.
yНомер года, 2 цифрыПримеры: 99, 03
Время
aAnte meridiem (лат. «до полудня») или Post meridiem (лат. «после полудня») в нижнем регистреam или
pm
AAnte 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 Миллисекунды. Замечание такое же как и для u.Пример: 654
Часовой пояс
e
Идентификатор часового поясаПримеры: UTC, GMT, Atlantic/Azores
I (заглавная i)Признак летнего времени1, если дата соответствует летнему времени, 0 в противном случае.
OРазница с временем по Гринвичу без двоеточия между часами и минутамиНапример: +0200
PРазница с временем по Гринвичу с двоеточием между часами и минутамиНапример: +02:00
p То же, что и P, но возвращает Z вместо +00:00 (доступен, начиная с PHP 8. 0.0)Например: +02:00
TАббревиатура часового пояса, если известна; в противном случае смещение по Гринвичу.Примеры: EST, MDT, +05
ZСмещение часового пояса в секундах. Для часовых поясов, расположенных западнее UTC, возвращаются отрицательные числа, а для расположенных восточнее UTC — положительные.от -43200 до 50400
Полная дата/время
cДата в формате стандарта ISO 86012004-02-12T15:19:21+00:00
rДата в формате » RFC 222/» RFC 5322Например: Thu, 21 Dec 2000 16:01:07 +0200
UКоличество секунд, прошедших с начала Эпохи Unix (1 января 1970 00:00:00 GMT)Смотрите также time()

date — Форматирует вывод системной даты/времени | Руководство по PHP

День
dДень месяца, 2 цифры с ведущим нулёмот 01 до 31
DТекстовое представление дня недели, 3 символаот Mon до Sun
jДень месяца без ведущего нуляот 1 до 31
l (строчная ‘L’)Полное наименование дня неделиот Sunday до Saturday
NПорядковый номер дня недели в соответствии со стандартом ISO-8601 (добавлен в версии PHP 5. 1.0)от 1 (понедельник) до 7 (воскресенье)
SАнглийский суффикс порядкового числительного дня месяца, 2 символа st, nd, rd или th. Применяется совместно с j
wПорядковый номер дня неделиот 0 (воскресенье) до 6 (суббота)
zПорядковый номер дня в году (начиная с 0)От 0 до 365
Неделя
WПорядковый номер недели года в соответствии со стандартом ISO-8601; недели начинаются с понедельника (добавлено в версии PHP 4.1.0)Например: 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) принадлежит предыдущему или следующему году; тогда будет использован год этой недели. (добавлен в версии PHP 5.1.0)Примеры: 1999 или 2003
YПорядковый номер года, 4 цифрыПримеры: 1999, 2003
yНомер года, 2 цифрыПримеры: 99, 03
Время
aAnte meridiem (англ. «до полудня») или Post meridiem (англ. «после полудня») в нижнем регистреam или pm
AAnte 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 Микросекунды (добавлено в версии PHP 5. 2.2). Учтите, что date() всегда будет возвращать 000000, т.к. она принимает целочисленный (integer) параметр, тогда как DateTime::format() поддерживает микросекунды.Например: 654321
Временная зона
eКод шкалы временной зоны(добавлен в версии PHP 5.1.0)Примеры: UTC, GMT, Atlantic/Azores
I (заглавная i)Признак летнего времени1, если дата соответствует летнему времени, 0 в противном случае.
OРазница с временем по Гринвичу, в часахНапример: +0200
PРазница с временем по Гринвичу с двоеточием между часами и минутами (добавлено в версии PHP 5. 1.3)Например: +02:00
TАббревиатура временной зоныПримеры: EST, MDT
ZСмещение временной зоны в секундах. Для временных зон, расположенных западнее UTC возвращаются отрицательные числа, а расположенных восточнее UTC — положительные.от -43200 до 50400
Полная дата/время
cДата в формате стандарта ISO 8601 (добавлено в PHP 5)2004-02-12T15:19:21+00:00
rДата в формате » RFC 2822Например: Thu, 21 Dec 2000 16:01:07 +0200
UКоличество секунд, прошедших с начала Эпохи Unix (The Unix Epoch, 1 января 1970 00:00:00 GMT)Смотрите также time()

PHP 5.

6 и PHP 7 на русском: Функция date()
День
dДень месяца, 2 цифры с ведущим нулёмот 01 до 31
DТекстовое представление дня недели, 3 символаот Mon до Sun
jДень месяца без ведущего нуляот 1 до 31
l (строчная ‘L’)Полное наименование дня неделиот Sunday до Saturday
NПорядковый номер дня недели в соответствии со стандартом ISO-8601 (добавлен в версии PHP 5.1.0)от 1 (понедельник) до 7 (воскресенье)
SАнглийский суффикс порядкового числительного дня месяца, 2 символа st, nd, rd или th. Применяется совместно с j
wПорядковый номер дня неделиот 0 (воскресенье) до 6 (суббота)
zПорядковый номер дня в году (начиная с 0)От 0 до 365
Неделя
WПорядковый номер недели года в соответствии со стандартом ISO-8601; недели начинаются с понедельника (добавлено в версии PHP 4.1.0)Например: 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) принадлежит предыдущему или следующему году; тогда будет использован год этой недели. (добавлен в версии PHP 5.1.0)Примеры: 1999 или 2003
YПорядковый номер года, 4 цифрыПримеры: 1999, 2003
yНомер года, 2 цифрыПримеры: 99, 03
Время
aAnte meridiem (англ. «до полудня») или Post meridiem (англ. «после полудня») в нижнем регистреam или pm
AAnte 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 Микросекунды (добавлено в версии PHP 5. 2.2). Учтите, что date() всегда будет возвращать 000000, т.к. она принимает целочисленный (integer) параметр, тогда как DateTime::format() поддерживает микросекунды.Например: 654321
Временная зона
eКод шкалы временной зоны(добавлен в версии PHP 5.1.0)Примеры: UTC, GMT, Atlantic/Azores
I (заглавная i)Признак летнего времени1, если дата соответствует летнему времени, 0 в противном случае.
OРазница с временем по Гринвичу, в часахНапример: +0200
PРазница с временем по Гринвичу с двоеточием между часами и минутами (добавлено в версии PHP 5. 1.3)Например: +02:00
TАббревиатура временной зоныПримеры: EST, MDT
ZСмещение временной зоны в секундах. Для временных зон, расположенных западнее UTC возвращаются отрицательные числа, а расположенных восточнее UTC — положительные.от -43200 до 50400
Полная дата/время
cДата в формате стандарта ISO 8601 (добавлено в PHP 5)2004-02-12T15:19:21+00:00
rДата в формате » RFC 2822Например: Thu, 21 Dec 2000 16:01:07 +0200
UКоличество секунд, прошедших с начала Эпохи Unix (The Unix Epoch, 1 января 1970 00:00:00 GMT)Смотрите также time()

Уроки PHP – получение и вывод даты и времени

Сегодняшняя статья посвящена рассмотрению того, как на практике использовать функции по получению даты и времени в PHP, а также обзору способов вывода и форматирования даты и времени.

 

 

Основные моменты для дат и времени в PHP

Функции, которые обрабатывают дату и время в PHP, позволяют получать дату и время с того сервера, на котором выполняется скрипт. Также они позволяют манипулировать, редактировать, форматировать эти значения перед их отображением на экран (выводом). Сегодня мы рассмотрим самые важные функции для работы с датой и временем.

 

 

Функция PHP date()

Наиболее используемая функция для обработки даты и времени – это функция date(). Эта функция возвращает фактическую (системную) дату и время в указанном вами формате. Также функция может конвертировать формат отметки времени (временная метка, метка времени или timestamp) в удобочитаемый формат. Полный синтаксис функции следующий:

date ( string $format [, int $timestamp = time() ] )

 

Функция возвращает строку, которая отформатирована в соответствии с указанным шаблоном (format). Аргумент timestamp задает метку времени; если timestamp не задан, тогда используется текущее системное время. Указывать временную метку необязательно, если вы ее не укажете, тогда она по умолчанию будет равна значению, которое возвращается функцией time().

 

 

Ниже представлены практические примеры получения фактической информации о дате и времени:

<?php
echo "<p>Отображение текущей даты: " . date('d-m-Y') . "</p>";
echo "<p>Отображение текущего времени: " . date('H:i:s') . "</p>";
echo "<p>Отображение текущей даты и времени: " . date('d-m-Y H:i:s') . "</p>";
echo "<p>Отображение текущей даты и времени в длинном формате: " . date('d F Y, D - g:i:s A') . "</p>";
?>

 

 

В данных примерах используются разные шаблоны формата даты и времени. Ниже представлена таблица с расшифровкой некоторых символов в строке format.

Символ в строке formatОписаниеПример возвращаемого значения
День
dДень месяца с 2-мя цифрамиот 01 до 31
DДень недели в текстовом формате, 3 символаот Mon до Sun
zПорядковый номер дня в году (начиная с 0)От 0 до 365
Месяц
FПолное название месяца, например, January или Marchот January до December
mПорядковый номер месяца, 2 цифрыот 01 до 12
MСокращенное название месяца, 3 символаот Jan до Dec
Год
YПорядковый номер года, 4 цифрыПримеры: 1999, 2019
yПорядковый номер года, 2 цифрыПримеры: 99, 19
Время
aAnte meridiem (лат. «до полудня») или Post meridiem (лат. «после полудня») в нижнем регистреam или pm
AAnte meridiem или Post meridiem в верхнем регистреAM или PM
gЧасы в 12-часовом форматеот 1 до 12
GЧасы в 24-часовом форматеот 0 до 23
hЧасы в 12-часовом форматеот 01 до 12
HЧасы в 24-часовом формате, 2 цифрыот 00 до 23
iМинуты, 2 цифрыот 00 до 59
sСекунды, 2 цифрыот 00 до 59

 

 

 

Функция PHP mktime()

Иногда вам нужно получить метку времени в прошлом или будущем. Вы можете сделать это с помощью функции mktime(). Вам нужно указать нужную дату, и она возвращается с меткой времени Unix. Синтаксис данной функции следующий:

int mktime ( [int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year]]]]]] )

 

Здесь используются следующие данные:

  • hour – Количество часов, прошедших с начала дня, указанного параметрами month, day и year.
  • minute – Количество минут, прошедших от начала часа, указанного параметром hour.
  • second – Количество секунд, прошедших от начала минуты, указанной параметром minute.
  • month – Количество месяцев, прошедших с конца предыдущего года.
  • day – Количество дней, прошедших с конца предыдущего месяца.
  • year – Номер года, может быть указан двумя или четырьмя цифрами.

 

Вы можете использовать эту временную метку с вышеупомянутой функцией даты (date()), чтобы отобразить ее в нужном формате. Ниже представлены некоторые практические примеры использования этой функции:

<?php
echo "<p>Отображение даты, сгенерированной функцией mktime: " . date('d-m-Y', mktime(0, 0, 0, 5, 25, 2019)) . "</p>";
echo "<p>Отображение даты, сгенерированной функцией mktime с неверным указанием дня и месяца: " . date('d-m-Y', mktime(0, 0, 0, 14, 32, 2019)) . "</p>";
?>

 

 

Если вы хотите получить дату завтрашнего дня, вы можете использовать следующий код:

<?php
echo "<p>Сегодняшняя дата: " . date('d-m-Y') . "</p>";
echo "<p>Завтра будет: " . date('d-m-Y', mktime(0, 0, 0, date('m'), date('d')+1, date('Y') ) ) . "</p>";
?>

 

В данном примере мы использовали функцию mktime() и добавили 1 день к параметру дня, чтобы получить дату завтрашнего дня.

 

 

Теги: php

  • 5304