Fonction datediff : calcule le temps entre deux dates

Contenu du snippet

Cette fonction calcule la différence de temps entre deux dates dans l'unité de votre choix si vous ne voulez pas l'effectuer dans la requete Mysql/SQL/etc.
Exemple :
$date1="01/02/2002 16h05"
$date2="01/02/2002 16h10"
$mode=60 (le mode est à exprimer en sec : si vous voulez le resultat en minutes alors $mode=60 ; 3600 pour le recuperer en heure )

date_diff("01/02/2002 16h05","01/02/2002 16h10",60)= 5
date_diff("01/02/2002 16h05","01/02/2002 17h05",3600)= 1

Source / Exemple :


function date_diff($date1,$date2,$mode) {
      $P1=explode(" ",date("d m Y H i s",strtotime($date1)));
      $P2=explode(" ",date("d m Y H i s",strtotime($date2)));

      return (round((mktime($P2[3],$P2[4],$P2[5],$P2[1],$P2[0],$P2[2]) -
                mktime($P1[3],$P1[4],$P1[5],$P1[1],$P1[0],$P1[2]))/$mode));
}

Conclusion :


Cette fonction est souvent utile et il n'en n'existe pas à ma connaissance dans php. Si vous souhaitez ne pas gérer ce calcul dans votre requête cette fonction vous aidera. Evidemment si vous pouvez le faire dans la requete comme expliquez dans le premier commentaire.

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.