Maison >développement back-end >tutoriel php >Comment comparer les temps en PHP et corriger une erreur courante ?

Comment comparer les temps en PHP et corriger une erreur courante ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-07 12:30:03839parcourir

How to Compare Times in PHP and Fix a Common Error?

Comparaison des temps en PHP

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn