Metoda createFromFormat a clasei DateTime

Metoda statică createFromFormat a clasei DateTime permite crearea unui obiect DateTime dintr-un șir de caractere care corespunde formatului indicat. Acceptă trei parametri: formatul datei, un șir de caractere cu data și un obiect opțional DateTimeZone. Returnează un obiect DateTime sau false în caz de eroare.

Sintaxă

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

Exemplu

Să creăm o dată dintr-un șir de caractere în formatul zi-lună-an:

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

Rezultatul executării codului:

php'2023-07-15'

Exemplu

Să creăm o dată și ora dintr-un șir de caractere într-un format non-standard:

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

Rezultatul executării codului:

php'15.07.2023 14:30:00'

Exemplu

Să creăm o dată cu specificarea fusului orar:

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');
?>

Rezultatul executării codului:

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

Vedeți și

  • metoda format,
    care formatează data și ora
  • funcția strtotime,
    care transformă descrierea textuală a datei într-un marcaj de timp