Aller au contenu

difference entre 2 date


choklata

Sujets conseillés

Bonsoir,

cela te donne le nombre de jour(s) entier(s) entre deux dates (peu importe celle qui est plus élevé que l'autre (utilisation de abs) :

<?php
 function datediff($timestamp1,$timestamp2) {
   return intval(abs($timestamp1-$timestamp2)/86400);
 }
 
 function date_uk2iso($date) {
   return join("-",array_reverse(explode("/",$date)));
 }
 
 $date1 = date_uk2iso("15/02/2006");
 $date2 = date_uk2iso("15/01/2006");
 echo datediff(strtotime($date1),strtotime($date2));
?>

Explications : dans datediff on trouve la différence entre deux timpestamps UNIX, ce qui donne un résultat en secondes, on divise donc par : 60 (secondes) * 60 (minutes) * 24 (heures) = 86400

intval set a ne récupérer que la valeur entière du résultat (les minutes et seconde du dernier jour entamé ou non ne t'intéressent pas, sauf erreur).

La fonction date_uk2iso sert à convertir la date dans le format que tu as fourni (Grande-Bretagne)... La date est scindée par les "/", le tableau retourné et renversé et join à nouveau par des "-"...cela correspond à une date ISO 8601 (YYYY-MM-DD) et grâce à cette conversion tu peux utiliser la fonction strtotime qui permet d'obtenir un timestamp depuis une date au format "English" ou ISO...

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...