5 методов преобразования формата DateTime из Y-m-d h: i: s в d-m-Y в PHP

Работа с форматами даты и времени — распространенная задача при разработке PHP. В этой статье блога мы рассмотрим различные методы преобразования формата DateTime из «Г-м-д ч: я: с» в «д-м-Г» с использованием разговорного языка и предоставим примеры кода. Независимо от того, являетесь ли вы новичком или опытным разработчиком PHP, эти методы помогут вам с легкостью справиться с форматированием даты и времени.

Метод 1: использование функций strtotime() и date()
Один из самых простых способов преобразования формата DateTime — использование функций strtotime() и date(). Функция strtotime() анализирует заданную строку даты и времени в временную метку Unix, а затем мы можем использовать функцию date() для ее форматирования в соответствии с нашими требованиями.

$originalDateTime = '2021-09-15 10:30:45';
$newDateTime = date('d-m-Y', strtotime($originalDateTime));
echo $newDateTime;

Метод 2: использование классов DateTime и DateTimeFormat
PHP предоставляет класс DateTime, который предлагает мощный набор методов для управления и форматирования дат. Мы можем создать объект DateTime с исходной строкой DateTime, а затем использовать метод format() для преобразования его в нужный формат.

$originalDateTime = '2021-09-15 10:30:45';
$dateTimeObj = DateTime::createFromFormat('Y-m-d H:i:s', $originalDateTime);
$newDateTime = $dateTimeObj->format('d-m-Y');
echo $newDateTime;

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

$originalDateTime = '2021-09-15 10:30:45';
$dateTimeParts = explode(' ', $originalDateTime);
$dateParts = explode('-', $dateTimeParts[0]);
$newDateTime = $dateParts[2] . '-' . $dateParts[1] . '-' . $dateParts[0];
echo $newDateTime;

Метод 4: использование регулярных выражений (Regex)
Если вы предпочитаете использовать регулярные выражения, вы можете использовать функцию preg_replace() для сопоставления и замены компонентов даты в исходной строке DateTime.

$originalDateTime = '2021-09-15 10:30:45';
$newDateTime = preg_replace('/(\d{4})-(\d{2})-(\d{2})/', '$3-$2-$1', $originalDateTime);
echo $newDateTime;

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

function convertDateTimeFormat($originalDateTime)
{
    $dateTimeParts = explode(' ', $originalDateTime);
    $dateParts = explode('-', $dateTimeParts[0]);
    $newDateTime = $dateParts[2] . '-' . $dateParts[1] . '-' . $dateParts[0];
    return $newDateTime;
}
$originalDateTime = '2021-09-15 10:30:45';
$newDateTime = convertDateTimeFormat($originalDateTime);
echo $newDateTime;

В этой статье мы рассмотрели пять различных методов преобразования формата DateTime из «Г-м-д ч: я: с» в «д-м-Г» в PHP. Эти методы предоставляют различные варианты форматирования даты и времени в зависимости от ваших предпочтений и требований. Используя функции strtotime() и date(), классы DateTime и DateTimeFormat, регулярные выражения или пользовательские функции, вы можете легко конвертировать форматы DateTime в своих проектах PHP. Приятного кодирования!