Format de date en PHP pour insertion dans MySQL
MySQL est une base de données SGBDR destinée à stocker des données relationnelles. Il prend en charge différents types de données, Date
étant l’un d’entre eux. Comme MySQL ne prend en charge que des formats de date particuliers, vous devez formater les dates avant d’insérer des dates dans la base de données ; sinon, la base de données générera une erreur.
Cet article présentera comment formater les dates en PHP avant de les insérer dans une base de données MySQL.
MySQL prend en charge 5 formats de date.
DATE
:YYYY-MM-DD
Il stocke uniquement la date sans heure dans la plage1000-01-01 à 9999-12-31
. Par exemple,2021-10-28
.DATETIME
:YYYY-MM-DD HH:MI:SS
. Il stocke la date avec l’heure dans la plage1000-01-01 00:00:00
à9999-12-31 23:59:59
. Par exemple,2021-10-28 10:30:24
TIMESTAMP
:YYYY-MM-DD HH:MI:SS
. Il stocke la date avec l’heure dans la plage1970-01-01 00:00:01
à2038-01-09 03:14:17
. Par exemple,2021-10-28 10:30:24
TIME
:HH:MI:SS
. Il stocke l’heure sans date dans la plage-838:59:59
à838:59:59
. Par exemple,10:30:24
YEAR
:YYYY
ouYY
. Il stocke l’année soit à 4 chiffres, soit à 2 chiffres dans la plage70(1970)-69(2069)
pour 2 chiffres et1901-2155 | 0000
pour 4 chiffres. Par exemple,2021
.
Avant d’apprendre la solution, comprenons le concept de date()
.
date()
en PHP
Il s’agit d’une fonction PHP intégrée qui renvoie la chaîne de date formatée.
Syntaxe de date()
date($format, $timestamp);
Paramètres
$format
: il s’agit d’un paramètre obligatoire qui spécifie le format de la chaîne de date de sortie. Certaines des options sont :
d
- Le jour du mois compris entre 01 et 31m
- Une représentation numérique d’un mois dans la plage de 01 à 12Y
- Une représentation à quatre chiffres d’une annéey
- Une représentation à deux chiffres d’une annéeH
- Une représentation à deux chiffres d’une heure dans la plage de 00 à 23i
- Une représentation à deux chiffres d’une minute dans la plage de 00 à 59s
- Une représentation à deux chiffres d’une seconde dans la plage de 00 à 59
$timestamp
: c’est un paramètre facultatif qui spécifie un horodatage Unix au format entier. Si elle n’est pas fournie, une valeur par défaut sera considérée comme l’heure locale actuelle.
Exemple de code :
<?php
$formated_DATETIME = date('Y-m-d H:i:s');
echo $formated_DATETIME. "<br>";
// 2021-10-27 14:02:16
$formated_DATE = date('Y-m-d');
echo $formated_DATE. "<br>";
// 2021-10-27
$formated_TIME = date('H:i:s');
echo $formated_TIME. "<br>";
//14:03:57
$formated_YEAR = date('Y');
echo $formated_YEAR. "<br>";
// 2021
?>
Production :
2021-10-27 14:02:16
2021-10-27
14:03:57
2021
date_format()
en PHP
Il s’agit d’une fonction PHP intégrée qui prend l’objet DateTime
en entrée et renvoie la chaîne de date formatée.
Syntaxe de date_format()
date_format($dateObject, $format);
Paramètres
$dateObject
: c’est un paramètre obligatoire qui spécifie un objet DateTime
.
$format
: il s’agit d’un paramètre obligatoire qui spécifie le format de la chaîne de date de sortie. Certaines des options sont :
d
- Le jour du mois compris entre 01 et 31m
- Une représentation numérique d’un mois dans la plage de 01 à 12Y
- Une représentation à quatre chiffres d’une annéey
- Une représentation à deux chiffres d’une annéeH
- Une représentation à deux chiffres d’une heure dans la plage de 00 à 23i
- Une représentation à deux chiffres d’une minute dans la plage de 00 à 59s
- Une représentation à deux chiffres d’une seconde dans la plage de 00 à 59
Exemple de code :
<?php
$date = date_create("2021/10/27");
$formated_DATETIME = date_format($date, 'Y-m-d H:i:s');
echo $formated_DATETIME. "<br>";
$formated_DATE = date_format($date, 'Y-m-d');
echo $formated_DATE. "<br>";
$formated_TIME = date_format($date, 'H:i:s');
echo $formated_TIME. "<br>";
$formated_YEAR = date_format($date, 'Y');
echo $formated_YEAR. "<br>";
?>
Production :
2021-10-27 00:00:00
2021-10-27
00:00:00
2021
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn