PHP: Calculer la différence en minutes entre deux dates.

Résolu
Anonyme209 Messages postés 761 Statut Membre -  
Anonyme209 Messages postés 761 Statut Membre -
Bonjour,

J'aimerais comparer la différence (en minutes) entre deux dates, une étant la date d'aujourd'hui, et l'autre étant une date récupérée dans une base de données.

J'ai trouvé la fonction
date_diff('$datea', CURTIME())

La variable $datea étant une variable "DateTime" récupérée dans une base de données MySQL
Deux problèmes:
-La fonction CURTIME(), permettant de récupérer la date et l'heure d'aujourd'hui, retourne une erreur
-La fonction date_diff retourne la différence en jours, alors que je la veux en minutes.

Merci de votre aide.

2 réponses

  1. Anonyme209 Messages postés 761 Statut Membre 19
     
    Bonjour,

    ça m'aide, mais il y a toujours une erreur: voici mon code:

    $time = time();
    $datec = strtotime($infos['DateDemande']);
    $diffe = abs($time - $datec);
    if($diffe > 7200){
    echo "demande expirée";
    }else{
    'code
    }


    Le problème est que le résultat de la fonction time() retourne un timestamp avec une avance de deux heures sur l'heure actuelle chez moi (UTC +01). Elle affiche donc 16:30 au lieu de 14:30 (quand je rajoute une ligne de code pour l'afficher)
    J'ai essayé
     $time = strtotime(CURTIME());

    Mais une erreur disant que la fonction CURTIME() n'existe pas s'affiche
    0
    1. CptRomaiin Messages postés 334 Statut Membre 58
       
      Est ce que la ligne date.timezone de ton fichier php.ini est bien renseignée ?

      Si tu n'y a pas accès, tu peux définir la zone avec cette ligne de code :

      date_default_timezone_set('Europe/Paris');
      0
    2. Anonyme209 Messages postés 761 Statut Membre 19
       
      Bonjour,

      je n'ai pas trouvé le fichier php.ini (je suis hébergé sous hostinger).
      Cependant, en rajoutant la ligne
      date_default_timezone_set('Europe/Paris');
      , il n'y a pas de problème, tout marche.

      Je mets le sujet en résolu.
      0