begin process at 2008 05 17 13:22:33
1 174 021 membres
141 nouveaux aujourd'hui
13 974 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

NOMBRE DE JOURS ENTRE DEUX TIMESTAMP


Information sur la source

Description

Retourne le nombre de jours entre deux timestamp sans faire simplement la difference des timestamp, il evalue aussi le fait que la difference peut deborder sur un jour supplementaire!

Source

  • function nbrJr($debut,$fin){
  • $debutJournee = mktime(0,0,0,date("m",$debut),date("d",$debut),date("Y",$debut));
  • $secAvtDeb = $debut-$debutJournee;
  • $diff = $fin - $debut;
  • $nbJr= intval($diff/(24*3600));
  • if( (($diff%(24*3600))+$secAvtDeb) > (24*3600) ) $nbJr++;
  • return $nbJr;
  • }
function nbrJr($debut,$fin){
$debutJournee = mktime(0,0,0,date("m",$debut),date("d",$debut),date("Y",$debut));
$secAvtDeb = $debut-$debutJournee;
$diff = $fin - $debut;
$nbJr= intval($diff/(24*3600));
if( (($diff%(24*3600))+$secAvtDeb) > (24*3600) ) $nbJr++;
return  $nbJr;
}
  • signaler à un administrateur
    Commentaire de coucou747 le 27/01/2007 14:39:16

    fonction déjà vue plein de fois ici, et mal codée : " => '

  • signaler à un administrateur
    Commentaire de coockiesch le 27/01/2007 16:14:29

    Salut!
    Je te propose de remplacer 24 * 3600 par 86400, tu gagnes tes calculs à chaque appel de la fonction!

    @++

    R@f

  • signaler à un administrateur
    Commentaire de cedriclomb le 29/01/2007 00:33:45


    Salut
    On pourrais aussi liberer de la mémoire en fesant
    if( ((($fin - $debut)%(24*3600))+($debut-$debutJournee)) > (24*3600) ) $nbJr++;
    Ca fait 2 variables de gagner

  • signaler à un administrateur
    Commentaire de coucou747 le 29/01/2007 10:43:53

    remplacer des calculs par des résultats, c'est pas exeptionnellement bon pour la compréhention du script...

  • signaler à un administrateur
    Commentaire de coockiesch le 29/01/2007 11:16:39

    C'est pour ça que y'a les comments, :)
    Enfin, je trouve, même si c personnel!

    @++

    R@f

  • signaler à un administrateur
    Commentaire de FhX le 29/01/2007 21:53:53

    Pareil, autant faire :

    // 86400 = 24*3600
    .....code.... * 86400 ..... ;


    Bon, si 1 itération, ca va rien changer.
    Je pense qu'au bout d'un certain... et encore, je doute :o
    Un calcul d'entier est le plus rapide, on risque de perdre 1ms sur 1 000 000 000 d'itération !
    C'est Antho qui risque de se tirer les cheveux :p

Ajouter un commentaire

Appels d'offres

Pub



CalendriCode

Mai 2008
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS