En PHP, la comparaison des temps peut être réalisée en utilisant différentes approches. Explorons-les et résolvons un problème spécifique lors de la comparaison des temps.
Problème :
Le code donné ne parvient pas à comparer correctement le temps et à afficher "ok" comme prévu :
$ThatTime ="14:08:10"; $todaydate = date('Y-m-d'); $time_now=mktime(date('G'),date('i'),date('s')); $NowisTime=date('G:i:s',$time_now); if($NowisTime >= $ThatTime) { echo "ok"; }
Solution 1 :
Utilisez la fonction strtotime() pour convertir la chaîne d'heure en horodatage :
$ThatTime ="14:08:10"; if (time() >= strtotime($ThatTime)) { echo "ok"; }
Solution 2 :
Utilisez la classe DateTime, qui prend également en compte les fuseaux horaires :
$dateTime = new DateTime($ThatTime); if ($dateTime->diff(new DateTime)->format('%R') == '+') { echo "OK"; }
Référence :
https://php.net/datetime.diff
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!