[PHP] Calculer le nombre de jours entre deux dates ? [résolu]

Calculer le nombre de jours entre deux dates ? [résolu] [PHP] - PHP - Programmation

Marsh Posté le 05-01-2003 à 13:53:54    

Bonjour,
 
tout est dans le topic : par une fonction PHP est-il possible de calculer le nombre de jours entre deux dates ?
Et si cette fonction n'existe pas, y'a-t-il moyen de le faire en javascript ? lequel ?
 
Merci d'avance !


Message édité par f L Y le 05-01-2003 à 23:32:03
Reply

Marsh Posté le 05-01-2003 à 13:53:54   

Reply

Marsh Posté le 05-01-2003 à 14:14:49    

non je crois pas mais http://www.php.net/manual/fr/function.mktime.php devrait etre utile

Reply

Marsh Posté le 05-01-2003 à 14:30:40    

dans le manuel de php, à la fonction date :
 
http://www.php.net/manual/en/function.date.php
 
on peut y trouver ca dans les commentaires :
 
I use this function to get difference between 2 dates:
 
function date_diff($date1, $date2) {
  $s = strtotime($date2)-strtotime($date1);
  $d = intval($s/86400);  
  $s -= $d*86400;
  $h = intval($s/3600);
  $s -= $h*3600;
  $m = intval($s/60);  
  $s -= $m*60;
  return array("d"=>$d,"h"=>$h,"m"=>$m,"s"=>$s);
}
 
Any better solutions?
 
je ne l'ai pas essayé...

Reply

Marsh Posté le 05-01-2003 à 23:31:40    

nico168 a écrit :

dans le manuel de php, à la fonction date :
 
http://www.php.net/manual/en/function.date.php
 
on peut y trouver ca dans les commentaires :
 
I use this function to get difference between 2 dates:
 
function date_diff($date1, $date2) {
  $s = strtotime($date2)-strtotime($date1);
  $d = intval($s/86400);  
  $s -= $d*86400;
  $h = intval($s/3600);
  $s -= $h*3600;
  $m = intval($s/60);  
  $s -= $m*60;
  return array("d"=>$d,"h"=>$h,"m"=>$m,"s"=>$s);
}
 
Any better solutions?
 
je ne l'ai pas essayé...  


 
Merci ça marche niquel
J'ai utilisé ça :
 
function date_diff($date1, $date2)  
{
 $s = strtotime($date2)-strtotime($date1);
 $d = intval($s/86400)+1;  
 return "$d";
}
 
Comme j'avais simplement besoin du nombre de jours.
 
Encore merci !

Reply

Marsh Posté le 02-04-2013 à 11:23:16    

je déterre ce topic car j'ai eu besoin du même genre de calcul.
 
 
Je ne suis pas sûr que le +1 soit correct ...
 
il me semble qu'il faudrait vérifier le modulo de la division : si celui-ci est différent de 0, alors on peut ajouter +1 (si on considère que tout jour commencé compte).  
 
Mais si le modulo vaut 0, alors rajouter +1 est une erreur (me semble-t-il).

Reply

Marsh Posté le 02-04-2013 à 13:40:32    

Et attention avec le coup des 86400s par jour, suivant les dates prises, ça va pas marcher (cf le changement d'heure d'été ou d'hiver...) :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed