Aller au contenu

Fonction PHP date_create_from_format : Syntaxe et exemples

Si vous devez créer un objet date PHP à partir d'une chaîne au format non standard, vous pouvez utiliser la fonction date_create_from_format. Cette fonction analyse une chaîne de date selon un format spécifié et renvoie un objet DateTime représentant la date analysée.

Syntaxe

La syntaxe de la fonction date_create_from_format est :

La syntaxe de la fonction date_create_from_format en PHP

php
date_create_from_format ( string $format , string $time [, DateTimeZone $timezone ] ) : DateTime|false

Le paramètre format spécifie le format de la chaîne de date, en utilisant les mêmes caractères de format que la fonction date. Par exemple, la chaîne de format "Y-m-d H:i:s" correspond à une chaîne de date comme "2023-03-02 17:30:45".

Le paramètre time spécifie la chaîne de date à analyser.

Le paramètre optionnel timezone spécifie le fuseau horaire de la date analysée. S'il n'est pas spécifié, le fuseau horaire par défaut défini par la fonction date_default_timezone_set sera utilisé.

La fonction renvoie un objet DateTime représentant la date analysée, ou false si la chaîne de date n'a pas pu être analysée.

Exemples

Voici quelques exemples d'utilisation de la fonction date_create_from_format :

Exemple d'utilisation de la fonction PHP date_create_from_format

php
<?php

$date = date_create_from_format('Y-m-d H:i:s', '2023-03-02 17:30:45');
echo $date->format('Y-m-d H:i:s'); // Output: 2023-03-02 17:30:45

Dans cet exemple, la fonction date_create_from_format analyse la chaîne de date "2023-03-02 17:30:45" à l'aide de la chaîne de format "Y-m-d H:i:s", et renvoie un objet DateTime représentant la date. La méthode format est utilisée pour afficher la date dans le même format que la chaîne d'entrée.

Comment utiliser la fonction PHP date_create_from_format ?

php
<?php

$date = date_create_from_format('j-M-Y', '15-Feb-2023');
echo $date->format('Y-m-d'); // Output: 2023-02-15

Dans cet exemple, la fonction date_create_from_format analyse la chaîne de date "15-Feb-2023" à l'aide de la chaîne de format "j-M-Y", et renvoie un objet DateTime représentant la date. La méthode format est utilisée pour afficher la date au format "Y-m-d", qui est différent de la chaîne d'entrée.

Comparaison avec d'autres fonctions de date

La fonction date_create_from_format est similaire à la fonction strtotime, qui analyse également une chaîne de date selon un format spécifié. Cependant, strtotime renvoie un timestamp Unix, qui est un entier représentant le nombre de secondes écoulées depuis le 1er janvier 1970 00:00:00 UTC, tandis que date_create_from_format renvoie un objet DateTime.

La fonction date_parse_from_format est une autre fonction capable d'analyser une chaîne de date selon un format spécifié. Cependant, date_parse_from_format renvoie un tableau contenant les composants de la date analysée, tels que l'année, le mois, le jour, l'heure, la minute et la seconde, tandis que date_create_from_format renvoie un objet DateTime qui encapsule la date analysée.

Conclusion

En résumé, la fonction date_create_from_format est une fonction PHP utile qui permet d'analyser une chaîne de date selon un format spécifié et de renvoyer un objet DateTime représentant la date analysée. En utilisant cette fonction, vous pouvez convertir des chaînes de date non standard en objets date standard qui peuvent être manipulés et formatés à l'aide d'autres fonctions de date PHP.

Pratique

Que fait la fonction date_create_from_format en PHP ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.