Η μέθοδος 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,
    που μετατρέπει την κειμενική περιγραφή μιας ημερομηνίας σε χρονική σήμανση