Po zapoznaniu się z dokumentacją PHP DateTime
wydaje się , że dwie następujące metody obiektu rozwiązałyby mój problem:
- DateTime :: diff : Pobierz różnicę i użyj jej, aby określić, która jest bardziej stara.
- DateTime :: getTimestamp : Pobierz znacznik czasu UNIX i porównaj je.
Obie te metody są oznaczone w doco jako dostępne w wersji> = 5.3 (i, co nie jest zaskoczeniem, jeśli spróbuję je wywołać, stwierdzę, że nie istnieją). Nie mogę znaleźć żadnej konkretnej dokumentacji dla 5.2.8, więc nie jestem pewien, czy w mojej wersji istnieją równoważne metody. I Googled problem i znaleźć eklektyczny gamę rozwiązań, z których żadna nie jest odpowiedź na moje bardzo proste wymagania:
- Jak porównać dwa obiekty DateTime?
- Gdzie mogę znaleźć dokumentację dla poprzednich wersji PHP? W szczególności wersja 5.2.8?
W pewnym kontekście mam następujący kod:
$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)
Najwyraźniej ten facet nie ma operatora porównania.
Edytować
Najwyraźniej moje założenia były całkowicie fałszywe (dziękuję Milenowi za tak skuteczne zilustrowanie tego). Jest operator porównania i działa dobrze dzięki. Czasami naprawdę brakuje mi kompilatora. Błąd znajduje się w powyższym kodzie, jestem pewien, że znajdziesz go znacznie szybciej niż ja :).
$_POST
, w przeciwnym razie kotek zostanie zabity.