Créer des dates facilement
La manière la plus simple pour créer des dates en PHP est d'instancier un objet de la classe DateTime
.
$date = new DateTime();
// "2022-12-19 08:33:03.003983"
On peut aussi passer une chaîne comme paramètre à ce constructeur :
// La date et l'heure actuelle ("2022-12-19 08:33:03.003983")
// Valeur par défaut du constructeur
$date = new DateTime("now");
// Ce matin à minuit ("2022-12-19 00:00:00.000000")
$date = new DateTime("midnight");
// Minuit demain ("2022-12-20 00:00:00.000000")
$date = new DateTime("tomorrow");
// Dernier jour du mois ("2022-12-31 00:00:00.000000")
$date = new DateTime("last day of december");
On peut créer des dates aussi à partir d'un format que l'on définit.
// 2022-12-21 08:33:03.003983
$date = DateTime::createFromFormat('Y-m-d', '2022-12-21');
On voit ici, que les heures, minutes et secondes sont initialisées avec les valeurs de l'heure courante. Si on souhaite réinitialiser ces valeurs à 0
, on peut utiliser !
.
// 2022-12-19 00:00:00.000000
$date = DateTime::createFromFormat('!Y-m-d', '2022-12-19');
// 2022-12-01 00:00:00.000000
$date = DateTime::createFromFormat('!Y-m', '2022-12');
// 2022-01-01 00:00:00.000000
$date = DateTime::createFromFormat('!Y', '2022');
// 1970-01-01 00:00:00.000000
$date = DateTime::createFromFormat('!', '');
Mon programme "S'entraîner pour progresser en PHP" est disponible. Il vous permettra de recevoir chaque semaine un kata de code directement dans votre boîte mail, ainsi que des aides à la réalisation, des vidéos explicatives et des défis supplémentaires.