Vergleich von Zeichenketten mit Datumsangaben in PHP
Nehmen wir an, wir haben zwei Datumsangaben im folgenden Text- format:
<?php
$date1 = '2020-12-01';
$date2 = '2019-12-01';
?>
In diesem Fall kann man diese Datumsangaben vergleichen und herausfinden, welche der beiden Datumsangaben größer ist:
<?php
var_dump($date1 > $date2);
?>
Wie funktioniert dieser Vergleich der Datumsangaben? Die Sache ist die, dass unsere Datumsangaben Zeichenketten sind und PHP vergleicht sie als Zeichenketten. Das bedeutet, es vergleicht zuerst die ersten Zeichen der beiden Datumsangaben: wenn sie gleich sind, dann vergleicht PHP die zweiten Zeichen, und so weiter, bis ein Unterschied gefunden wird. Dank der Tatsache, dass in unserem Format das Datum zuerst das Jahr, dann den Monat und dann den Tag enthält, ist ein solcher Vergleich möglich.
Wichtig ist auch, dass die Datumsangaben im gleichen Format vorliegen. In unserem Fall sind die Trennzeichen der Datumsteile Bindestriche. Das ist natürlich nicht zwingend erforderlich. Man kann beispielsweise Punkte setzen:
<?php
$date1 = '2020.12.01';
$date2 = '2019.12.01';
?>
Oder die Trennzeichen sogar ganz weglassen:
<?php
$date1 = '20201201';
$date2 = '20191201';
?>
Hauptsache, der Vergleich ist korrekt, die Anordnung muss wie folgt sein: zuerst Jahr, dann Monat, dann Tag.
Schreiben Sie Code, der die beiden unten angegebenen Datumsangaben vergleicht und eine Meldung ausgibt, welche von ihnen größer ist:
$date1 = '2020-11-30';
$date2 = '2020-12-01';