Dando un'occhiata alla documentazione di PHP, i seguenti due metodi DateTime
dell'oggetto sembrano entrambi risolvere il mio problema:
- DateTime :: diff : ottieni la differenza e usala per determinare quale è più antica.
- DateTime :: getTimestamp : ottieni il timestampt UNIX e confronta quelli.
Entrambi questi metodi sono contrassegnati nel doco come disponibili nella versione> = 5.3 (e, non a caso, se provo a chiamarli trovo che non esistano). Non riesco a trovare alcuna documentazione specifica per 5.2.8, quindi non sono sicuro che ci siano metodi equivalenti nella mia versione. Ho cercato su Google il problema e ho trovato una gamma eclettica di soluzioni, nessuna delle quali risponde ai miei requisiti molto semplici:
- Come faccio a confrontare due oggetti DateTime?
- Dove posso trovare il doco per le precedenti versioni di PHP? In particolare la versione 5.2.8?
Per alcuni contesti, ho il seguente codice:
$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)
Apparentemente non c'è nessun operatore di confronto su questo ragazzo.
modificare
Apparentemente i miei presupposti erano completamente falsi (grazie Milen per averlo illustrato in modo così efficace). C'è un operatore di confronto e funziona bene grazie. A volte mi manca davvero un compilatore. Il bug è nel codice sopra, sono sicuro che lo troverai molto più velocemente di me :).
$_POST
var, o il gattino deve essere ucciso.