Comparação de strings com datas em PHP
Suponha que temos duas datas no seguinte formato de texto:
<?php
$date1 = '2020-12-01';
$date2 = '2019-12-01';
?>
Nesse caso, é possível realizar a comparação dessas datas e descobrir qual delas é maior:
<?php
var_dump($date1 > $date2);
?>
Como essa comparação de datas funciona? O fato é que nossas datas são strings e o PHP as compara como strings. Ou seja, ele primeiro compara os primeiros caracteres das duas datas: se forem iguais, o PHP compara os segundos caracteres, e assim por diante, até encontrar uma diferença. Graças ao fato de que no nosso formato de data o ano vem primeiro, depois o mês, e depois o dia, é possível fazer essa comparação.
É importante também que as datas estejam no mesmo formato. No nosso caso, os separadores das partes da data são hífens. Isto, é claro, não é obrigatório. Por exemplo, podemos usar pontos:
<?php
$date1 = '2020.12.01';
$date2 = '2019.12.01';
?>
Ou até mesmo remover os separadores:
<?php
$date1 = '20201201';
$date2 = '20191201';
?>
O mais importante, para que a comparação seja correta, é que a disposição seja a seguinte: primeiro o ano, depois o mês, depois o dia.
Escreva um código que compare as duas datas mostradas abaixo e exiba uma mensagem sobre qual delas é maior:
$date1 = '2020-11-30';
$date2 = '2020-12-01';