Difference de date PHP

Résolu
Profil bloqué -  
prosthetiks Messages postés 1309 Statut Membre -
Bonjour,
Je voulais savoir, juste comment faire pour que:
si date qui est contenue dans le fichier texte date.txt

est plus grande que la date d'aujourd'hui.
afficher oui. si non ,afficher non
voila

en gros une éspèce de "if (date(d-m-Y) > $date) {...}

j'ai éssayé avec datetime mais dans les deux cas sa me retourne une valeur positive
voilà, merci d'avance.

2 réponses

  1. prosthetiks Messages postés 1309 Statut Membre 431
     
    Tu peux aussi travailler avec des objets dateTime

    <?php
        $date1 = new DateTime(date('D-m-y H:i', time()));
        $date = new DateTime(date('D-m-y H:i', time() - 5000));
        if($date->diff($date1)->invert){
            print 'apres';
        }else{
            print 'avant';
        }
        
    ?>
    
    1
  2. unix91 Messages postés 22 Statut Membre 7
     
    Salut

    À mon avis, le plus simple est d'utiliser les timestamp (ie, le nombre de secondes écoulées depuis le 1er janvier 1970).
    Pour ça, il faut :

    1. Récupérer la date dans ton fichier, et la convertir sous forme de timestamp à l'aide de la fonction mktime() -> pour les paramètres à passer à cette fonction, cherche sur google, tu trouveras.
    2. Récupérer le timestamp courant. Ça se fait au moyen de la fonction time(), sans paramètres.
    3. Comparer les deux

    En résumé :

    // $heures, $minutes, ... sont à récupérer dans ton fichier
    // je ne sais pas sous quel format tu as enregistré ça

    $date = mktime($heures,$minutes,$secondes,$mois,$jour,$annee);
    $date_courante = time();
    if ($date > $date_courante)
    ...
    0