Datetime

Résolu
Bonjour,
J'explique mon soucis, j'ai un système de reservation qui stocke une date jour mois année heure min seconde converti en datetime puis je voudrais testé si la date de réservation existe déjà, (je récupère toute les date de ma table) qui sont des DATETIME puis la comparé avec la date jours mois heure min seconde
comment faire ?

Merci

4 réponses

  1. Bonjour pour comparer deux dates : strtotime.


    if ( strtotime($date1)>strtotime($date2))
    // date 1 plus grande
    1. Salut, tes dates sont toutes dans le même format, on est d'accord?

      Si oui, tu peux utiliser la fonction PHP in_array()
      Un simple contrôle
      if (in_array($datetime_recherche, $tab_contenant_les_datetime)) {
          $trouve=true;
      }

      Après un simple
      if ($trouve){ echo "datetime existant";} 
      1. Merci pour vos réponse je vais testé sa se soir et je vous retournerais le résulta ;) j'avais pas pensé au in_array
        pour les infos les date dans la table sont des datetime
        ce que je récupère sont 4 variable jour mois année heure minute
        je formate les variable récupéré en datetime
        1. Voilà, avec un banal strtotime(), çà marche correctement pour formater un datetime
        2. Merci je vous retourne sa se soir
      2. Bonsoir a tous voici comment j'ai fait ma vérification, car je récupérais un json et que j'avais une erreur je récupérais day o lieu de days..... se "s" ma couté 2 jours de boulot vive la fatigue

        En tout cas merci a vous, qui m'avez mis sur la voix de la solution

        $count = -1;
        $res = Reservation::all();
        $res_list = array();
        foreach ($res as $v) {
        $row = array(
        'day' => $v->day
        );
        array_push($res_list, $row);
        $count++;
        }

        $fullday = $year.'-'.$month.'-'.$days.' '.$hours.':'.$mins.':00';
        for ($i=0; $i < $count; $i++) {
        $test = $i;
        }
        if ($fullday == $res_list[$test]['day']) {
        return "error";
        }else{
        return "je fait un enregistrement";
        }
        1. héhé, c'est régulièrement des problèmes de ce genre, un ";" manquant, un "s" manquant ou autres, qu'on ne voit pas au premier coup d'oeil.

          A+