Формат даты мы можем получить из поля <input type="date">, однако он будет в формате гггг-мм-дд, т.е. 2024-01-25. Однако для вывода информации предпочтительнее будут другие форматы. Давайте посмотрим, как мы можем преобразовать формат даты в PHP.

Для начала маленький тест. Посмотрим, что выведет выбор даты в поле <input type="date">:

Используем PHP-функции strtotime() и date()

В этой статье мы будем использовать функции PHP strtotime() и date() для преобразования формата даты и времени. Попробуем преобразовать формат даты несколькими способами.

Функция strtotime() преобразует дату в секунды. После этого мы можем преобразовать секунды выбранной даты в любой формат с помощью функции date(). Ниже приведены несколько примеров преобразований.

Пример 1. Преобразуем ГГГГ-ММ-ДД в ММ-ДД-ГГГГ

Для западного мира более характерным является формат даты в виде мм-дд-гггг ("01-25-2024") , поэтому здесь нам нужно изменить последовательность вывода данных:

Вывод: 01-25-2024

Пример 2. Преобразуем ГГГГ-ММ-ДД в ДД-ММ-ГГГГ

В "кириллическом мире" последовательность вывода данных - это дд-мм-гггг (25-01-2024). Преобразуем стандартный формат даты гггг-мм-дд (2024-01-25) в нужный дд-мм-гггг:

Вывод: 25-01-2024

Пример 3. Преобразуем ГГГГ-ММ-ДД в ДД.ММ.ГГГГ

По тому же принципу мы можем вывести дату с точками в формате дд.мм.гггг (25.01.2024), что является еще более популярным форматом:

Вывод: 25.01.2024

Пример 4. Преобразуем ГГГГ/ММ/ДД в ДД.ММ.ГГГГ.

Если у вас есть косые черты в формате даты, например "2024/01/25" (ГГГГ/ММ/ДД), и вам нужно преобразовать слэш в точки, а данные вывести в другой последовательности ("25.01.2024", т.е. ДД.ММ.ГГГГ), то сначала нужно использовать функцию str_replace(), а затем один из вариантов выше:


Вывод: 25.01.2024

Используем метод DateTime::createFromFormat

Класс DateTime предназначен для управления датой и временем в PHP. Его метод createFromFormat мы можем использовать для преобразования формата даты. В примере ниже мы будем менять формат гггг-мм-дд на дд.мм.гггг:

Вывод: 14-09-2024

Все остальные форматы вы можете получить, подставив нужный вариант вывода в конце.

Используем функцию date_parse_from_format()

Это самый сложный способ преобразования даты в нужный формат, но вдруг вам понадобится и такой вариант. Функция date_parse_from_format() возвращает массив, содержащий  информацию о дате. Мы берем из него только то, что нужно:

Вывод: 22.7.2024

О том, как получить текущую дату в PHP, читайте в отдельной статье.

Автор: Админ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *