Heim >Backend-Entwicklung >PHP-Tutorial >Wie vergleiche ich Zeiten in PHP und behebe einen häufigen Fehler?

Wie vergleiche ich Zeiten in PHP und behebe einen häufigen Fehler?

Barbara Streisand
Barbara StreisandOriginal
2024-11-07 12:30:03908Durchsuche

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

Vergleichen von Zeiten in PHP

In PHP kann der Vergleich von Zeiten mit verschiedenen Ansätzen erreicht werden. Lassen Sie uns sie untersuchen und ein bestimmtes Problem beim Zeitvergleich lösen.

Problem:
Der angegebene Code vergleicht die Zeit nicht korrekt und gibt nicht wie erwartet „ok“ aus:

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

Lösung 1:
Verwenden Sie die Funktion strtotime(), um die Zeitzeichenfolge in einen Zeitstempel umzuwandeln:

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

Lösung 2:
Verwenden Sie die DateTime-Klasse, die auch Zeitzonen berücksichtigt:

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

Referenz:
https://php.net/datetime.diff

Das obige ist der detaillierte Inhalt vonWie vergleiche ich Zeiten in PHP und behebe einen häufigen Fehler?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn