La maggior parte delle soluzioni presentate sembra funzionare, ma tutti dimentica una cosa: il tempo.
Prendendo Evan esempio:
$datetime1 = strtotime('May 3, 2012 10:38:22 GMT');
$datetime2 = strtotime('06 Apr 2012 07:22:21 GMT');
$secs = $datetime2 - $datetime1;// == <seconds between the two times>
$days = $secs/86400;
Quando non tagliare parte del tempo, ciò che potrebbe portare a milscalculations. Ad esempio: Intervallo tra 2014-05-01 14:00:00
(Y-m-d) e 2014-05-02 07:00:00
sarà 0, xxx, non 1. È necessario ridurre la parte del tempo di ogni data.
quindi dovrebbe essere:
$datetime1 = strtotime(date('Y-m-d', strtotime('May 3, 2012 10:38:22 GMT')));
$datetime2 = strtotime(date('Y-m-d', strtotime('06 Apr 2012 07:22:21 GMT')));
$secs = $datetime2 - $datetime1;// == <seconds between the two times>
$days = $secs/86400;
Ho bisogno di convertire i secondi tra due giorni times..to .. . non c'è un modo più veloce –
secondi in un giorno = 60 * 60 * 24 = 86,400 quindi basta dividere per quello. – evan
Ottima soluzione @evan. Thumbs up (y) – NullPointer