Wenn Sie sich die PHP-Dokumentation ansehen, DateTime
scheinen die folgenden zwei Methoden des Objekts mein Problem zu lösen:
- DateTime :: diff : Ermitteln Sie den Unterschied und verwenden Sie diesen, um festzustellen, welcher älter ist.
- DateTime :: getTimestamp : Ruft den UNIX-Zeitstempel ab und vergleicht diese.
Beide Methoden sind im Dokument als in Version> = 5.3 verfügbar markiert (und es überrascht nicht, dass sie nicht vorhanden sind, wenn ich versuche, sie aufzurufen). Ich kann keine spezifische Dokumentation für 5.2.8 finden, daher bin ich mir nicht sicher, ob meine Version gleichwertige Methoden enthält. Ich habe das Problem gegoogelt und eine vielseitige Auswahl an Lösungen gefunden, von denen keine meine sehr einfachen Anforderungen erfüllt:
- Wie vergleiche ich zwei DateTime-Objekte?
- Wo finde ich das Dokument für frühere PHP-Versionen? Speziell Version 5.2.8?
Für einige Zusammenhänge habe ich den folgenden Code:
$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)
Anscheinend gibt es keinen Vergleichsoperator für diesen Kerl.
Bearbeiten
Anscheinend waren meine Annahmen völlig falsch (danke Milen, dass er dies so effektiv illustriert hat). Es gibt einen Vergleichsoperator und es funktioniert gut, danke. Manchmal vermisse ich wirklich einen Compiler. Der Fehler befindet sich im obigen Code. Ich bin sicher, Sie werden ihn viel schneller finden als ich :).
$_POST
Kätzchen getötet.