Comment convertir une chaîne de caractères en date et en heure en PHP
-
Combinaison de
strtotime()
et dedate
-
Utiliser
DateTime::createFromFormat
oudate_create_from_format
Pour convertir une chaîne en Date
et DateTime
, plusieurs fonctions ou méthodes peuvent être utilisées, comme la combinaison de strtotime()
et date()
, en utilisant la méthode de la classe DateTime::createFromFormat
ou la méthode format()
dans la même classe, ou la fonction PHP intégrée de date_create_from_format
.
Combinaison de strtotime()
et de date
La fonction strtotime()
retourne le nombre de secondes écoulées depuis le 1er janvier 1970, tout comme l’horodatage d’une machine Linux. Elle retourne le nombre total de secondes du paramètre fourni passé à la fonction.
Paramètres:
Time/Date
(obligatoire) - Ce paramètre spécifie la date/heure avec un format de chaîne de caractères.Now
(facultatif) - Ce paramètre est l’horodatage qui peut être utilisé comme base pour le calcul des dates relatives
La fonction date()
est celle qui formate la date et l’heure locales, et retourne une nouvelle chaîne de date formatée.
Paramètres:
format
(obligatoire) - Ce paramètre spécifie le format de la chaîne fournie.timestamp
(facultatif) - Ce paramètre est untimestamp
UNIX entier et la valeur par défaut est l’heure locale actuelle.
Pour utiliser correctement à la fois strtotime()
() et date()
, utilisez strtotime()
pour la première date et ensuite utilisez date()
pour la reconvertir.
Exemple:
$oldDate = strtotime('03/08/2020');
$newDate = date('Y-m-d',$time);
echo $newDate;
//output: 2020-03-08
Note: Il y a une énorme différence entre /
et -
lorsque l’on utilise comme séparateur pour le formatage d’une date, si le séparateur est un /
alors le format américain m/d/y
est supposé ; et si le séparateur est un -
, alors le format européen d-m-y
est supposé. Pour éviter toute ambiguïté, il est recommandé d’utiliser les dates ISO 8601 (YYYY-MM-DD)
.
Utiliser DateTime::createFromFormat
ou date_create_from_format
La fonction DateTime::createFromFormat
est une fonction PHP intégrée qui retourne un nouvel objet DateTime
qui représente le format de la date et de l’heure. D’autre part, date_create_from_format
est un style procédural qui utilise le DateTime::createFromFormat
.
Parameters:
Format
(obligatoire) - Ce paramètre spécifie le format à utiliser.Time
(obligatoire) - Ce paramètre représente la chaîne de date/heure. Si ce paramètre est NULL, alors il utilisera la date/heure actuelle.Timezone
(facultatif) - Le fuseau horaire de l’heure. La valeur par défaut est le fuseau horaire actuel.
Exemple de DateTime::createFromFormat
.
echo $dateNew = DateTime::createFromFormat('m-d-Y', '03-08-2020')->format('Y/m/d');
//output: 2020/03/08
Exemple de date_create_from_format
.
echo $dateNew = date_create_from_format("m-d-Y", "03-08-2020")->format("Y-m-d");
//output: 2020/03/08
La seule différence entre date_create_from_format
et DateTime::createFromFormat
est que le DateTime::createFromFormat
n’est pas disponible en PHP 5.2 et inférieur.
Article connexe - PHP Date
- Comment ajouter des jours à Date en PHP
- Comment calculer la différence entre deux dates à l'aide de PHP
- Comment convertir la date et l'heure en chaîne de caractères en PHP
- Comment convertir un format de date en un autre en PHP
- Comment obtenir la date et l'heure actuelles en PHP
Article connexe - PHP String
- Comment supprimer tous les espaces d'une chaîne de caractères en PHP
- Comment convertir la date et l'heure en chaîne de caractères en PHP
- Comment convertir un entier en chaîne de caractères en PHP
- Comment convertir un tableau en chaîne de caractères en PHP
- Comment convertir une chaîne de caractères en un numéro en PHP