Qual è il modo migliore per calcolare il numero totale di secondi tra due date? Finora ho provato qualcosa sulla falsariga di:
$delta = $date->diff(new DateTime('now'));
$seconds = $delta->days * 60 * 60 * 24;
Tuttavia, la daysproprietà dell'oggetto DateInterval sembra essere danneggiata nell'attuale build PHP5.3 (almeno su Windows, restituisce sempre lo stesso 6015valore). Ho anche tentato di farlo in un modo che non sarebbe riuscito a preservare il numero di giorni in ogni mese (round a 30), anni bisestili, ecc:
$seconds = ($delta->s)
+ ($delta->i * 60)
+ ($delta->h * 60 * 60)
+ ($delta->d * 60 * 60 * 24)
+ ($delta->m * 60 * 60 * 24 * 30)
+ ($delta->y * 60 * 60 * 24 * 365);
Ma non sono davvero contento di usare questa soluzione a metà.
formatè quando diciamo che il numero di secondi è 0 mentre il numero di minuti è 1, $delta->format("%r%s")risulta essere 0 :(
$delta->format("%r%s")?