2010-03-01 4 views
1

J'ai cette valeur de base de données:PHP Comment comparer la date et la date?

« 2009-1-1 0:00:00 », d'accord, permettez-moi de coller mon code:

$fetch = mysql_fetch_assoc($result); 
$db_value = $fetch['date'];//'2009-1-1 00:00:00' 

$today = date('Y-m-d H:i:s'); // Todays date 

Si je veux comparer les deux valeurs, que dois-je faire:

if($db_value < $today){ 
    // Do something 
} 

ou méthode 2, convertir à strToTime:

if(strtotime($db_value) < strtotime($today)){ 
    // Do someting 
} 

Peut-être ma méthode n'est pas correcte, que dois-je utiliser pour comparer 2 dates?

+2

Dupliquer: http://stackoverflow.com/questions/2113940/php-compare-date –

Répondre

2

Probablement, vous pouvez obtenir la valeur d'époque de la date en utilisant la fonction mktime, vous pouvez

comparer les temps de la date de timbre des valeurs facilement. avant que vous analysiez la première chaîne de date

en année, mois, jour, heures, minutes, secondes. puis utilisez la fonction mktime

+0

Merci, je pense que cela devrait marcher pour moi. – AFK

2

Vous devriez utiliser le second, car votre résultat db est une chaîne de caractères, donc il ne peut pas être utilisé comme ça.

0

Vous pouvez utiliser une classe de date PHP simple pour comparer des dates. Cela rend la comparaison très facile.

Par exemple:

$date = new simpleDate(); 
echo $date->set($date1)->compare($date2)->isBefore(); 

Il existe également d'autres méthodes de comparaison utiles dans la bibliothèque. Veuillez vérifier la page des tutoriels. Click here.