Calcule le nombre de nuités entre deux dates [Résolu]

Messages postés
8
Date d'inscription
jeudi 10 mai 2018
Statut
Membre
Dernière intervention
5 juin 2018
- - Dernière réponse : bennnnnn
Messages postés
8
Date d'inscription
jeudi 10 mai 2018
Statut
Membre
Dernière intervention
5 juin 2018
- 5 juin 2018 à 22:49
bonsoir, s'il vous plait comment calculer le nombre de nuitée entre la date d'arrivée et la date de départ avec php????
merci d'avance
Afficher la suite 

1 réponse

Messages postés
26551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 octobre 2019
316
0
Merci
Bonjour,
http://php.net/manual/fr/datetime.diff.php
$datetime1 = date_create('2018-05-11');
$datetime2 = date_create('2018-05-23');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%a days');

jordane45
Messages postés
26551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 octobre 2019
316 -
Quelle erreur ?
Et dans quel format as tu écris les dates ?
Et quel code as tu ecris avec tes variables ?
bennnnnn
Messages postés
8
Date d'inscription
jeudi 10 mai 2018
Statut
Membre
Dernière intervention
5 juin 2018
-
le format de mes date est jj/mm/aaaa
j'utilise ce code
$nbre_nuits=($date_fin_sejour-$date_debut_sejour)-1
l'erreur quand j'utlise votre code est la suite:
date_diff() expects parameter 1 to be DateTime
jordane45
Messages postés
26551
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 octobre 2019
316 -
Je t'ai demandé dans quel format sont tes dates ?
Et le code complet que tu avais essayé
bennnnnn
Messages postés
8
Date d'inscription
jeudi 10 mai 2018
Statut
Membre
Dernière intervention
5 juin 2018
-
$date_debut_sejour=$_POST['Arrive'];
$date_fin_sejour=$_POST['departt'];
$date1 = strtotime($date_debut_sejour);
$date2 = strtotime($date_fin_sejour);

// On récupère la différence de timestamp entre les 2 précédents
$nbJoursTimestamp = $date2 - $date1;

// ** Pour convertir le timestamp (exprimé en secondes) en jours **
// On sait que 1 heure = 60 secondes * 60 minutes et que 1 jour = 24 heures donc :
$nb_nuits = $nbJoursTimestamp/86400; // 86 400 = 60*60*24

echo "Nombre de jours : ".$nb_nuits;
ce code est juste
bennnnnn
Messages postés
8
Date d'inscription
jeudi 10 mai 2018
Statut
Membre
Dernière intervention
5 juin 2018
-
comment indiquer que ce question est résolu??
Commenter la réponse de jordane45