Date::createFromFormat
Метод Date::createFromFormat является статическим методом класса Date. Он позволяет создать объект даты из строки, соответствующей заданному формату. Первым параметром передаётся строка формата, вторым - строка с датой, которую нужно распарсить. Третьим параметром можно передать часовой пояс. Если строка не соответствует формату, метод возвращает false.
Синтаксис
<?php
use Illuminate\Support\Facades\Date;
Date::createFromFormat($format, $datetime, $timezone);
?>
Пример
Давайте создадим объект даты из строки, содержащей дату в формате 'Y-m-d':
<?php
use Illuminate\Support\Facades\Date;
$date = Date::createFromFormat('Y-m-d', '2025-12-31');
echo $date->format('d.m.Y');
?>
Результат выполнения кода:
"31.12.2025"
Пример
Создадим объект даты из строки с временем в формате 'H:i:s':
<?php
use Illuminate\Support\Facades\Date;
$time = Date::createFromFormat('H:i:s', '14:30:45');
echo $time->format('h:i A');
?>
Результат выполнения кода:
"02:30 PM"
Пример
Создадим объект даты из строки с указанием часового пояса:
<?php
use Illuminate\Support\Facades\Date;
$date = Date::createFromFormat(
'Y-m-d H:i:s',
'2025-12-31 14:30:45',
'Europe/Moscow'
);
echo $date->timezone->getName();
?>
Результат выполнения кода:
"Europe/Moscow"
Пример
Попробуем распарсить дату с нестандартным форматом:
<?php
use Illuminate\Support\Facades\Date;
$date = Date::createFromFormat(
'd/m/Y',
'31/12/2025'
);
echo $date->format('Y-m-d');
?>
Результат выполнения кода:
"2025-12-31"