Perbandingan String dengan Tanggal di PHP
Misalkan kita memiliki dua tanggal dalam format teks berikut:
<?php
$date1 = '2020-12-01';
$date2 = '2019-12-01';
?>
Dalam hal ini, kita dapat melakukan perbandingan kedua tanggal tersebut dan mengetahui mana yang lebih besar:
<?php
var_dump($date1 > $date2);
?>
Bagaimana cara perbandingan tanggal-tanggal ini bekerja? Masalahnya adalah tanggal kita adalah string dan PHP membandingkannya sebagai string. Artinya, pertama-tama PHP membandingkan karakter pertama dari dua tanggal: jika sama, maka PHP membandingkan karakter kedua, dan seterusnya, sampai perbedaan ditemukan. Berkat fakta bahwa dalam format tanggal kita, tahun ditempatkan terlebih dahulu, diikuti bulan, lalu hari, perbandingan seperti ini mungkin dilakukan.
Penting juga agar tanggal berada dalam format yang sama. Dalam kasus kita, pemisah bagian-bagian tanggal adalah tanda hubung. Tentu saja, ini tidak wajib. Misalnya, bisa menggunakan titik:
<?php
$date1 = '2020.12.01';
$date2 = '2019.12.01';
?>
Atau bahkan menghilangkan pemisahnya:
<?php
$date1 = '20201201';
$date2 = '20191201';
?>
Yang terpenting, agar perbandingannya benar, penempatannya harus sebagai berikut: pertama tahun, lalu bulan, lalu hari.
Tuliskan kode yang akan membandingkan dua tanggal berikut ini dan menampilkan pesan tentang mana yang lebih besar:
$date1 = '2020-11-30';
$date2 = '2020-12-01';