web-dev-qa-db-fra.com

PHP date heure supérieure à celle d'aujourd'hui

s'il vous plaît aider ce qui ne va pas avec mon code. cela montre toujours qu'aujourd'hui est supérieur au 01/02/2016? où en 2016 est supérieur à 2015.

<?php
 $date_now = date("m/d/Y");

$date=date_create("01/02/2016");
$date_convert = date_format($date,"m/d/Y");

if ($date_now > $date_convert) {
        echo 'greater than';
    }else{
        echo 'Less than';
    }

P.S: 01/02/2016 provient de ma base de données

25
Nixxx27

Vous ne comparez pas les dates . Vous comparez des chaînes . Dans le monde des comparaisons de chaînes, 09/17/2015> 01/02/2016 car 09> 01. Vous devez soit mettre votre date dans un format de chaîne comparable, soit comparer les objets DateTime comparables.

<?php
 $date_now = date("Y-m-d"); // this format is string comparable

if ($date_now > '2016-01-02') {
    echo 'greater than';
}else{
    echo 'Less than';
}

démo

Ou

<?php
 $date_now = new DateTime();
 $date2    = new DateTime("01/02/2016");

if ($date_now > $date2) {
    echo 'greater than';
}else{
    echo 'Less than';
}

démo

71
John Conde