Споредба на стрингови со датуми во PHP
Нека имаме два датуми во следниот текстуелен формат:
<?php
$date1 = '2020-12-01';
$date2 = '2019-12-01';
?>
Во ваков случај може да се изврши споредба на овие датуми и да се дознае, кој од овие датуми е поголем:
<?php
var_dump($date1 > $date2);
?>
Како се случува споредбата на овие датуми? Работата е што нашите датуми се претставуваат како стрингови и PHP ги споредува како стрингови. Тоа е, прво ги споредува првите знаци од двата датуми: ако тие се исти, тогаш PHP ги споредува вторите знаци, и така натаму, се додека не најде разлика. Поради тоа што во нашиот формат на датуми прво е расположена годината, потоа месецот, а потоа денот, и можно е вакво споредување.
Важно е исто така, датумите да бидат во ист формат. Во нашиот случај, разделувачите на деловите од датумите се цртички. Ова, се разбира, не е задолжително. На пример, може да се стават точки:
<?php
$date1 = '2020.12.01';
$date2 = '2019.12.01';
?>
Или воопшто да се отстранат разделувачите:
<?php
$date1 = '20201201';
$date2 = '20191201';
?>
Најважно, за споредбата да биде коректна, распоредот мора да биде следниот: прво година, потоа месец, потоа ден.
Напишете код, кој ќе ги спореди двата прикажани подолу датуми и ќе испечати порака за тоа, кој од нив е поголем:
$date1 = '2020-11-30';
$date2 = '2020-12-01';