Les Allergies
Alimentaires
Posez votre question Signaler

Comparer deux dates en php [Résolu]

jolindou - Dernière réponse le 23 août 2011 à 00:23
Salut à tous.
J'aimerais avoir une petit infos svp.
J'aimerais savoir comment je peux comparer deux date en php.
C'est j'ai une variable $date_debut et une autre $date_fin et je voudrais afficher un message si la date de debut est superieur a la date de fin.
Merci par avance+
a+
Lire la suite 

Comparer deux dates en php »

10 réponses
Réponse
+44
moins plus
Encore plus simple:
La fonction time() renvoi le nombre de seconde écoulées depuis le 1er janvier 1970
La fonction mktime permet de fabriquer un timestamp (nombre de seconde depuis le 1er janvier 1970)

Donc tu prends ta date, tu utilises mktime dessus (http://fr.php.net/manual/fr/function.mktime.php) et tu n'as plus qu'à comparer les deux nombres, le plus petit étant la date la plus ancienne

cela permet de prendre en compte les heures les minutes et les secondes sans se préoccuper des fuseaux horaires
Ajouter un commentaire
Réponse
+39
moins plus
Un astuce toute bête et très utiles pour comparer les dates en php:
http://blog.galerie-cesar.com/php-comparer-les-dates-astuce-tres-pratique/
Ajouter un commentaire
Réponse
+8
moins plus
Y plus facile:

if (new DateTime() < new DateTime('2009-08-27')) echo “dans le futur”;
Ajouter un commentaire
Réponse
+4
moins plus
Bonjour, en utilisant la POO :

// date à tester :
$now = date(’Y-m-d’);
$next = ‘2050-01-01′;

// test
$now = new DateTime( $now );
$now = $now->format(’Ymd’);
$next = new DateTime( $next );
$next = $next->format(’Ymd’);

if( $now < $next ) echo “next est dans le futur”;
else echo “next est dans le passé”;

La POO rend le code plus claire et lisible, parfois les commentaires ne sont même plus necessaire ! :)

Salutation.
Ajouter un commentaire
Réponse
+3
moins plus
Salut.

Voir :
http://www.wikistuce.info/doku.php/php/classe/operation_sur_les_dates

Si c'est des dates dans un BDD, c'est plus facile je crois.
jolindou - 13 déc. 2006 à 13:05
merci c'est cool de ta part.
Les dates sont envoyé part un formulaire.
Je suis déja tombé sur ce petit tuto, il me parait un peut compliqué...
Donc c'est pourquoi je cherche un autre moyen sans trop surcharger mon code
jolindou - 13 déc. 2006 à 13:12
AH ! je pense avoir trouvé, voici mon code et dites moi ce que vous en pensé. Ca à l'air de fonctionner.
=> date_en est une fonction qui me convertit ma date au format anglophone

if (strtotime (date_en($date_fin)) - strtotime (date_en($date_debut)) < 0)
echo "<br>la date de fin doit etre superieur à la date de début<br>";
Ajouter un commentaire
Réponse
+2
moins plus
salut

sinon utiliser la fonction mktime qui retourne le timestamp , puis tu compares les timestamps de tes 2 dates
Ajouter un commentaire
Réponse
+1
moins plus
slt
comment soutraire les week et les heures de la nuit dans le calcul de la difference entre 2 dates?????????????????????
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour à tous!

J'ai une table qui contient des dates sous cette forme date('d-m-Y à H:i:s'), et je souhaite créer un script qui permet d'extraire de cette table les dates qui sont > a 30 min donc tester sur la date et surtout sur minute, est ce que quelqu'un peut m'aider ? merci
Ajouter un commentaire
Ce document intitulé « comparer deux dates en php » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?