Переглянувши документацію PHP, DateTime
могло б вирішити мою проблему наступні два методи об’єкта:
- DateTime :: diff : Отримайте різницю та використовуйте її, щоб визначити, що є найдавнішим.
- DateTime :: getTimestamp : Отримайте часовий такт UNIX та порівняйте їх.
Обидва ці методи позначені в doco як такі, що доступні у версії> = 5.3 (і, не дивно, якщо я спробую викликати їх, я вважаю, що їх не існує). Я не можу знайти якусь конкретну документацію для 5.2.8, тому я не впевнений, чи є у моїй версії еквівалентні методи. Я вирішив проблему і знайшов еклектичний спектр рішень, жоден з яких не відповідає моїм дуже простим вимогам:
- Як порівняти два об'єкти DateTime?
- Де я можу знайти doco для попередніх версій PHP? Зокрема версія 5.2.8?
Для деякого контексту у мене є такий код:
$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)
Мабуть, у цього хлопця немає оператора порівняння.
Редагувати
Мабуть, мої припущення були повністю помилковими (дякую Мілен за те, що це так ефективно проілюструвала). Є оператор порівняння, і він працює чудово завдяки. Іноді я дуже сумую за компілятором. Помилка в коді вище, я впевнений, що ви знайдете її набагато швидше, ніж я :).
$_POST
формі, або кошеня буде вбито.