Aller au contenu

date_diff()

Premiers pas

Avant de plonger dans les détails de la manipulation des dates en PHP, il est important de comprendre les bases. Bien que les horodatages Unix (le nombre de secondes écoulées depuis le 1er janvier 1970, 00:00:00 UTC) soient largement utilisés dans les langages de programmation et les systèmes d'exploitation, PHP gère principalement les dates et les heures à l'aide de la classe DateTime. Cette approche orientée objet offre un support robuste des fuseaux horaires et des méthodes intégrées pour le formatage, le calcul des différences et la manipulation des dates, ce qui en fait la norme recommandée pour le développement PHP moderne.

Pour obtenir l'horodatage Unix actuel en PHP, vous pouvez utiliser la fonction time(), comme suit :

Comment obtenir l'horodatage Unix actuel en PHP ?

php
$current_timestamp = time();

Cela retournera l'horodatage Unix actuel sous forme de valeur entière.

Calculer les différences entre dates

L'une des tâches les plus courantes lors de la manipulation des dates consiste à calculer la différence entre deux dates. En PHP, vous pouvez utiliser la fonction date_diff() pour y parvenir. Cette fonction prend deux objets DateTime en arguments et retourne un objet DateInterval représentant la différence entre les deux dates.

Voici un exemple :

Calculer les différences entre dates en PHP

php
<?php

$first_date = new DateTime('2022-01-01');
$second_date = new DateTime('2022-02-01');

$interval = date_diff($first_date, $second_date);

echo $interval->format('%R%a days');

Dans cet exemple, nous créons deux objets DateTime représentant le 1er janvier et le 1er février 2022. Nous passons ensuite ces objets à la fonction date_diff() pour calculer la différence entre les deux dates. Enfin, nous utilisons la méthode format() de l'objet DateInterval pour afficher la différence en jours.

Formater les dates pour l'affichage

Lors de l'affichage de dates sur une page web ou dans une application, il est souvent nécessaire de les formater d'une manière spécifique. Les objets DateTime de PHP fournissent une méthode format() qui gère nativement le formatage des dates, éliminant ainsi le besoin de fonctions procédurales et garantissant une gestion cohérente des fuseaux horaires.

Voici un exemple d'utilisation de la méthode DateTime::format() :

Comment formater une date avec DateTime en PHP ?

php
<?php

$date = new DateTime('2022-03-02');
$formatted_date = $date->format('F j, Y');

echo $formatted_date;

Dans cet exemple, nous créons un objet DateTime représentant le 2 mars 2022. Nous utilisons ensuite la méthode format() pour formater la date à l'aide de la chaîne 'F j, Y'. Cette chaîne de format spécifie que le mois doit être affiché en toutes lettres ('F'), le jour sans zéros non significatifs ('j'), et l'année sur quatre chiffres ('Y').

Manipuler les dates et les heures

En plus de calculer les différences entre dates et de formater les dates pour l'affichage, la classe DateTime de PHP fournit des méthodes pour manipuler les valeurs de date et d'heure. Par exemple, vous pouvez utiliser la méthode modify() pour ajouter ou soustraire du temps à une date, comme suit :

Manipuler les dates et les heures en PHP

php
<?php

$date = new DateTime('2022-03-02');
$date->modify('+1 week');

echo $date->format('F j, Y');

Dans cet exemple, nous créons un objet DateTime représentant le 2 mars 2022. Nous utilisons ensuite la méthode modify() pour ajouter une semaine à la date. Enfin, nous utilisons la méthode format() pour afficher la date résultante sous forme de chaîne.

Conclusion

Dans ce guide, nous avons couvert certaines des fonctions les plus couramment utilisées pour travailler avec les dates en PHP. En comprenant comment calculer les différences entre dates, formater les dates pour l'affichage et manipuler les valeurs de date et d'heure à l'aide d'objets DateTime, vous serez en mesure de gérer une grande variété de tâches liées aux dates dans vos applications PHP. N'oubliez pas d'utiliser ces méthodes de manière appropriée et prudente, car une mauvaise gestion des dates et des heures peut entraîner des erreurs subtiles et difficiles à déboguer. Grâce à ces connaissances, vous pouvez désormais travailler avec les dates en PHP en toute confiance et créer des applications puissantes et efficaces.


Nous espérons que ce guide vous a été utile dans votre parcours de développement PHP. Si vous avez des questions ou des commentaires, n'hésitez pas à les laisser ci-dessous.

Pratique

Que fait la fonction PHP date_diff() ?

Trouvez-vous cela utile?

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