Soustraire date PHP

Résolu/Fermé
cha7ri Messages postés 205 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 20 mars 2011 - 18 mai 2009 à 17:04
cha7ri Messages postés 205 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 20 mars 2011 - 19 mai 2009 à 13:02
Bonjour,

je veux faire un soustraction de deux date et je veux que le résultat soit en nombre de jours......en PHP


et merci d'avance
A voir également:

5 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
18 mai 2009 à 18:54
<?php

$date1="15/05/2009";
$date2="12/03/2009";
//on va faire un array de chaque date pour extraire les différentes parties j, m a
$array_date1=explode("/",$date1); //donne un array avec jour, mois,annee en index 0 1 2 
$array_date2=explode("/",$date2);
//on va faire le timestamp de chaque date: c'est le nombre de secondes depuis le 1/1/1970 pour une date
$timestamp_date1=mktime(0,0,0,$array_date1[1],$array_date1[0],$array_date1[2]);//H,Mn,Sec,mois,jour,annee
$timestamp_date2=mktime(0,0,0,$array_date2[1],$array_date2[0],$array_date2[2]);//H,Mn,Sec,mois,jour,annee
//calcul
$nbJours=floor(($timestamp_date1-$timestamp_date2)/(3600*24));

echo "nbr de jours: ".$nbJours;

?>


j'ai pas testé, il peut subsister une erreur de frappe
3
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
18 mai 2009 à 17:10
passes par le timestamp UNIX

soustraite les timestamp des dates et divises par 3600*24 et php a une fonction qui permet d'arrondir:

ceil() au nombre supérieur
floor() au nombre inferieur
1
cha7ri Messages postés 205 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 20 mars 2011 29
18 mai 2009 à 18:36
SVP .....tu peux me citer un petit exemple....
0
cha7ri Messages postés 205 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 20 mars 2011 29
19 mai 2009 à 12:33
j'ai essayer ta méthode , logiquement ça doit marcher,.....mais c'est le contraire:je te donne un exemple:
quand j'ai fait cette opération :
2009-08-02 - 2009-05-19 = -6117

il y a surement une erreur ???
merci de m'aider
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cha7ri Messages postés 205 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 20 mars 2011 29
19 mai 2009 à 13:02
j'ai commit une erreur fatal................hhhhhhhhhhhhhhhh.................
vous m'avez donner un exemple avec les dates de type D/M/Y et moi je travail avec Y-M-D


merci pour votre aide

@+
0