Comparaison de dates en PHP : gestion des jours non remplis de zéros
Vous souhaitez comparer les dates actuelles et stockées sans remplissage de zéro, telles que "2011-10-2", pour déterminer le plus grand. L'approche initiale utilisant "<" la comparaison peut donner des résultats incorrects. Voici des méthodes alternatives :
Méthode 1 : Utilisation de strtotime()
Si toutes les dates en question sont postérieures au 1er janvier 1970, vous pouvez utiliser strtotime() :
$today = date("Y-m-d"); $expire = $row->expireDate; //from database $today_time = strtotime($today); $expire_time = strtotime($expire); if ($expire_time < $today_time) { /* do Something */ }</p> <p><strong>Méthode 2 : Utilisation de la classe DateTime (PHP 5.2.0 )</strong></p> <p>Pour les versions PHP 5.2.0 et supérieures, la classe DateTime propose une autre approche :</p> <pre class="brush:php;toolbar:false">$today_dt = new DateTime($today); $expire_dt = new DateTime($expire); if ($expire_dt < $today_dt) { /* Do something */ }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!