PHP Comparer les valeurs datetime
Dans mon application PHP je suis en train de comparer les valeurs de date et heure comme suit:
if($datetime_from_db < date('Y-m-d H:i:s'))
{
//then do something
}
Les deux valeurs sont dans le même format. Ce que je n'arrive pas à comprendre est pourquoi il compare uniquement la date et ignore le temps. La date et les valeurs de temps sont importants pour moi, mais je ne sais pas comment le faire fonctionner.
OriginalL'auteur dtntcdr | 2011-02-14
Vous devez vous connecter pour publier un commentaire.
Comparant un chaîne comme
"2011-02-14 15:46:00"
à l'autre chaîne n'est pas réellement comparer dates, il compare deux chaînes de caractères selon analyse de chaînes numériques règles. Vous aurez besoin de comparer numérique réelle horodateurs:Oui, mais
strtotime(date('Y-m-d H:i:s'))
est le même quetime()
.OriginalL'auteur deceze
Si vous voulez que cela fonctionne avec les dates de dernières 2038, vous ne pouvez pas utiliser la fonction strtotime() ou time().
Voir cette question pour l'explication.
Une meilleure approche:
new DateTime($datetime_from_db) < new DateTime();
OriginalL'auteur Andrew
Cela peut vous aider.
OriginalL'auteur Tarun Gupta