Porównywanie ciągów znaków z datami w PHP
Załóżmy, że mamy dwie daty w następującym formacie tekstowym:
<?php
$date1 = '2020-12-01';
$date2 = '2019-12-01';
?>
W takim przypadku można wykonać porównanie tych dat i dowiedzieć się, która z tych dat jest większa:
<?php
var_dump($date1 > $date2);
?>
W jaki sposób odbywa się porównanie tych dat? Chodzi o to, że nasze daty są ciągami znaków i PHP porównuje je jako ciągi znaków. To znaczy, że najpierw porównuje pierwsze znaki dwóch dat: jeśli są takie same, to PHP porównuje drugie znaki, i tak dalej, aż nie znajdzie różnicy. Dzięki temu, że w naszym formacie daty najpierw znajduje się rok, potem miesiąc, a potem dzień, możliwe jest takie porównanie.
Ważne jest również, aby daty były w tym samym formacie. W naszym przypadku separatorami części dat są myślniki. To oczywiście nie jest konieczne. Na przykład, można postawić kropki:
<?php
$date1 = '2020.12.01';
$date2 = '2019.12.01';
?>
Lub całkowicie usunąć separatory:
<?php
$date1 = '20201201';
$date2 = '20191201';
?>
Najważniejsze, aby porównanie było poprawne, układ musi być następujący: najpierw rok, potem miesiąc, potem dzień.
Napisz kod, który porówna dwie podane poniżej daty i wyświetli komunikat o tym, która z nich jest większa:
$date1 = '2020-11-30';
$date2 = '2020-12-01';