Maison >développement back-end >tutoriel php >Comment puis-je comparer une chaîne de date à la date du jour en programmation ?

Comment puis-je comparer une chaîne de date à la date du jour en programmation ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-28 21:34:15612parcourir

How Can I Compare a Date String to Today's Date in Programming?

Comparer les dates avec aujourd'hui

En programmation, il est souvent nécessaire de comparer des dates pour déterminer si l'une précède, est égale ou succède à une autre. Ceci est particulièrement utile pour des tâches telles que calculer les décalages horaires ou déterminer si un événement s'est produit dans le passé.

Considérez le scénario suivant : vous disposez d'une variable $var contenant une chaîne de date et d'heure, telle que "2010 -01-21 00:00:00.0". Vous souhaitez comparer cette date à la date d'aujourd'hui pour déterminer si $var représente une date antérieure à aujourd'hui, égale à aujourd'hui ou postérieure à aujourd'hui.

Solution

À effectuez cette comparaison, vous pouvez utiliser les étapes suivantes :

  1. Convertir les dates en valeurs d'heure : Utilisez le strtotime() pour convertir à la fois $var et l'heure actuelle en valeurs d'horodatage UNIX, qui représentent le nombre de secondes depuis le 1er janvier 1970.
$var_timestamp = strtotime($var);
$today_timestamp = time();
  1. Calculez le décalage horaire : Soustrayez le $var_timestamp du $today_timestamp pour obtenir le décalage horaire dans secondes.
$time_difference = $today_timestamp - $var_timestamp;
  1. Comparez le décalage horaire : En fonction du décalage horaire, vous pouvez déterminer la relation entre les deux dates :
  • Si $time_difference est négatif, $var est avant aujourd'hui.
  • Si $time_difference est zéro, $var est égal à aujourd'hui.
  • Si $time_difference est positif, $var est après aujourd'hui.

Par exemple, si $var représente une date un jour dans le passé et l'heure actuelle est 10h00, $time_difference serait d'environ -86400 secondes (60 60 24 = 86 400 secondes par jour). Dans ce cas, vous concluriez que $var est avant aujourd'hui.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn