Chapitre 17 : Dates et heures
Maîtrisez la manipulation des dates et heures en PHP avec ce chapitre complet. Découvrez les fonctions essentielles pour gérer le temps dans vos applications web.
1. Introduction
Gérer les dates et les heures est essentiel dans toute application web : afficher la date actuelle, enregistrer une heure, calculer un délai, formater des dates pour les utilisateurs ou la base de données… PHP propose plusieurs fonctions très puissantes pour cela.
2. Afficher la date et l'heure actuelles
Utilisez la fonction date() avec un format spécifique :
echo date("d/m/Y"); // Exemple : 31/07/2025
echo date("H:i:s"); // Heure actuelle
?>
Formats courants :
d: jour (2 chiffres)m: moisY: année (4 chiffres)H: heure (24h)i: minutess: secondes
3. Définir le fuseau horaire
Par défaut, PHP utilise UTC. Vous pouvez définir un autre fuseau :
date_default_timezone_set("Europe/Paris");
?>
4. Timestamp Unix
Le timestamp est le nombre de secondes écoulées depuis le 1er janvier 1970 :
echo time(); // Exemple : 1722207684
?>
Utile pour comparer ou stocker des dates de manière compacte.
5. Convertir un texte en date
strtotime() transforme une chaîne de texte en timestamp :
$timestamp = strtotime("2025-12-25");
echo date("d/m/Y", $timestamp); // Affiche : 25/12/2025
?>
6. Classe DateTime (POO)
PHP propose une classe orientée objet très pratique pour manipuler les dates :
$date = new DateTime("2025-08-01");
echo $date->format("d/m/Y");
?>
Ajouter ou retirer du temps :
$date->modify("+7 days");
$date->modify("-2 months");
?>
7. Calculer la différence entre deux dates
Utilisez la méthode diff() de la classe DateTime :
$d1 = new DateTime("2025-08-01");
$d2 = new DateTime("2025-12-31");
$interval = $d1->diff($d2);
echo $interval->format("%m mois et %d jours");
// Affiche : "4 mois et 30 jours"
?>
8. À retenir
date()permet d'afficher l'heure et la date actuelletime()donne un timestamp (nombre de secondes)strtotime()convertit un texte en dateDateTimepermet une manipulation avancéediff()permet de comparer deux dates
9. Exercices proposés
- Afficher la date du jour dans le format français.
- Afficher combien de jours il reste avant le 31 décembre.
- Afficher l'âge d'une personne née en 2000.
- Créer une fonction qui ajoute X jours à une date donnée.
10. Ce que vous apprendrez ensuite
Dans le chapitre 18, vous verrez comment filtrer et valider les données utilisateur en toute sécurité avec les fonctions filter_var(), expressions régulières, et autres bonnes pratiques.