Метод createFromFormat на класа DateTime

Статичният метод createFromFormat на класа DateTime позволява създаването на обект DateTime от низ, съответстващ на указания формат. Приема три параметъра: формат на датата, низ с дата и незадължителен обект DateTimeZone. Връща обект DateTime или false при грешка.

Синтаксис

phpDateTime::createFromFormat(
  string $format,
  string $datetime,
  DateTimeZone $timezone = null
): DateTime|false

Пример

Нека създадем дата от низ във формат ден-месец-година:

php<?php
  $date = DateTime::createFromFormat('d-m-Y', '15-07-2023');
  echo $date->format('Y-m-d');
?>

Резултат от изпълнението на кода:

php'2023-07-15'

Пример

Нека създадем дата и час от низ в нестандартен формат:

php<?php
  $date = DateTime::createFromFormat('Y/m/d H:i', '2023/07/15 14:30');
  echo $date->format('d.m.Y H:i:s');
?>

Резултат от изпълнението на кода:

php'15.07.2023 14:30:00'

Пример

Нека създадем дата с указание на часова зона:

php<?php
  $timezone = new DateTimeZone('Europe/Moscow');
  $date = DateTime::createFromFormat('Y-m-d H:i:s', '2023-07-15 14:30:00', $timezone);
  echo $date->format('Y-m-d H:i:s e');
?>

Резултат от изпълнението на кода:

php'2023-07-15 14:30:00 Europe/Moscow'

Вижте също

  • метод format,
    който форматира дата и час
  • функцията strtotime,
    която преобразува текстово описание на дата в часова марка