Перейти к содержимому

date_format()

date_format()

Введение

Дата и время являются важнейшими компонентами во многих языках программирования, включая PHP. Понимание того, как форматировать даты и время, необходимо любому разработчику. В этой статье мы обсудим функцию date_format() в PHP — процедурную обертку, которая позволяет разработчикам форматировать даты и время различными способами.

Что такое функция date_format()?

Функция date_format() в PHP используется для форматирования дат и времени в определенном виде. Она принимает два аргумента: первый аргумент должен быть экземпляром объекта DateTime, а второй — строкой, указывающей желаемый формат даты. Обратите внимание, что date_format() является процедурным псевдонимом для метода DateTime::format().

Как использовать функцию date_format()

Чтобы использовать функцию date_format(), сначала необходимо создать объект даты. Вы можете создать объект даты с помощью класса DateTime, который встроен в PHP. Вот пример:

php
$date = new DateTime('2023-03-03');

Это создает новый объект даты, установленный на 3 марта 2023 года, в полночь. По умолчанию DateTime использует часовой пояс сервера. Для предсказуемых результатов рекомендуется явно указывать часовой пояс:

php
$date = new DateTime('2023-03-03', new DateTimeZone('UTC'));

Затем вы можете использовать функцию date_format() для форматирования даты любым удобным способом. Вот пример:

php
<?php

echo date_format($date, 'Y-m-d');

Это выведет дату в формате YYYY-MM-DD.

Для современных PHP-приложений рекомендуется использовать DateTimeImmutable. Это предотвращает случайное изменение исходного объекта даты, что является распространенной причиной ошибок при работе с датами.

Распространенные форматы дат

Существует множество различных способов форматирования дат с помощью функции date_format(). Вот некоторые из самых распространенных форматов:

  • Y-m-d: Дата в формате YYYY-MM-DD.
  • d/m/Y: Дата в формате DD/MM/YYYY.
  • m/d/Y: Дата в формате MM/DD/YYYY.
  • H:i:s: Время в 24-часовом формате (например, 13:00:00).
  • h:i:s a: Время в 12-часовом формате (например, 01:00:00 am).

Пользовательские форматы дат

Помимо стандартных форматов, вы также можете создавать собственные форматы дат с помощью функции date_format(). Вот некоторые из наиболее часто используемых символов формата:

  • Y: Год четырьмя цифрами (например, 2023).
  • y: Год двумя цифрами (например, 23).
  • m: Месяц в виде двузначного числа (например, 03).
  • M: Сокращенное название месяца (например, Мар).
  • F: Полное название месяца (например, Март).
  • d: День месяца в виде двузначного числа (например, 03).
  • D: Сокращенное название дня недели (например, Пт).
  • l: Полное название дня недели (например, Пятница).
  • j: День месяца без ведущих нулей (например, 3).
  • S: Английское порядковое окончание для дня месяца (например, st, nd, rd, th).
  • H: Час в 24-часовом формате (например, 13).
  • h: Час в 12-часовом формате (например, 01).
  • i: Минуты в виде двузначного числа (например, 05).
  • s: Секунды в виде двузначного числа (например, 30).
  • a: am или pm.

Вот пример пользовательского формата даты:

php
<?php

echo date_format($date, 'l, F jS Y, h:i:s a');

Это выведет дату и время в формате Friday, March 3rd 2023, 12:00:00 am.

Заключение

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

Практика

Какие параметры используются для форматирования даты в PHP согласно содержанию указанной страницы?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.