web-dev-qa-db-fra.com

PHP comparer le temps

Comment comparer les temps en PHP?

Je veux dire ceci:

$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";
}

Le code ci-dessus ne s'imprime pas correctement. Je m'y attendais.

33
DiegoP.
$ThatTime ="14:08:10";
if (time() >= strtotime($ThatTime)) {
  echo "ok";
}

Une solution utilisant DateTime (qui concerne également le fuseau horaire).

$dateTime = new DateTime($ThatTime);
if ($dateTime->diff(new DateTime)->format('%R') == '+') {
  echo "OK";
}

http://php.net/datetime.diff

63
KingCrunch

Pour voir le temps actuel est supérieur ou égal à 14:08:10, procédez comme suit:

if (time() >= strtotime("14:08:10")) {
  echo "ok";
}

Selon vos sources d'entrée, assurez-vous de prendre en compte le fuseau horaire.

Voir PHP time () et PHP strtotime ()

12
Lance Rushing

Un moyen simple de comparer le temps est:

$time = date('H:i:s',strtotime("11 PM"));
if($time < date('H:i:s')){
     // your code
}
6
Gaurav Gupta