Page 1 sur 1

Calcul de durée entre 2 dates

Posté : 07 sept. 2005, 10:44
par Invité
Bonjour,

je souhaiterais savoir comment calculer une durée entre 2 dates, sans utiliser la fonction timediff (ancienne version de PHP oblige car EasyPHP ne gère qu'a partir de la 1.8 et j'utilise la 1.7...).

Merci d'avance.

Posté : 07 sept. 2005, 10:50
par charabia
Fonction :
<?php
function facteur($jour , $mois , $annee){
        $b=365*$annee;
        $c=31*($mois-1);
        if (($mois==1) || ($mois==2)){
                $d= 0;
                $e = intval(($annee -1)/4);
                $h = intval(0.75*(intval(($annee-1)/100)+1));
        }
        else {
                $d= intval(0.4*$mois+2.3);
                $e = intval($annee/4);
                $h = intval(0.75*(intval($annee/100)+1));
        }
        $result = $jour + $b+ $c - $d +$e -$h;
        return $result;
}

function diff_dates_cal_greg($jour1 , $mois1 , $annee1 , $jour2 , $mois2 , $annee2){
        $diff = facteur($jour2 , $mois2 , $annee2)-facteur($jour1 , $mois1 , $annee1);
        return $diff; 
}
?>
Utilisation de la fonction :
<html>
<head>
<title>Difference entre deux dates</title>
</head>
<body>
Différence (en nombre de jours) entre le 9 mars 2003 et le 2 avril 2003 :
<?php 
echo diff_dates_cal_greg("9", "3", "2003", "2", "4", "2003"); 
?>
</body>
</html>
Vu sur phpfacile

Posté : 07 sept. 2005, 16:47
par Invité
merci :wink: