Setelah melihat dokumentasi PHP, dua metode DateTime
objek berikut ini sepertinya akan menyelesaikan masalah saya:
- DateTime :: diff : Dapatkan perbedaan dan gunakan itu untuk menentukan mana yang lebih kuno.
- DateTime :: getTimestamp : Dapatkan cap waktu UNIX dan bandingkan.
Kedua metode ini ditandai dalam acara dokumenter sebagai tersedia dalam versi> = 5.3 (dan, tidak mengherankan, jika saya mencoba untuk memanggil mereka saya menemukan mereka tidak ada). Saya tidak dapat menemukan dokumentasi khusus untuk 5.2.8 jadi saya tidak yakin apakah ada metode yang setara dalam versi saya. Saya telah Googled masalah dan menemukan berbagai eklektik solusi, tidak ada yang menjawab kebutuhan saya sangat sederhana:
- Bagaimana cara membandingkan dua objek DateTime?
- Di mana saya dapat menemukan dokumen untuk versi PHP sebelumnya? Khususnya versi 5.2.8?
Untuk beberapa konteks, saya memiliki kode berikut:
$st_dt = new DateTime(verifyParam ('start_date'));
$end_dt = new DateTime(verifyParam ('end_date'));
// is the end date more ancient than the start date?
if ($end_dt < $start_dt)
Rupanya tidak ada operator pembanding pada orang ini.
Edit
Rupanya asumsi saya benar-benar salah (terima kasih Milen untuk menggambarkan ini dengan sangat efektif). Ada operator perbandingan dan itu berfungsi dengan baik terima kasih. Terkadang saya benar-benar kehilangan kompiler. Bug ada dalam kode di atas, saya yakin Anda akan menemukannya jauh lebih cepat daripada yang saya lakukan :).
$_POST
vars Anda , atau anak kucing akan dibunuh.