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 days
proprietà dell'oggetto DateInterval sembra essere danneggiata nell'attuale build PHP5.3 (almeno su Windows, restituisce sempre lo stesso 6015
valore). 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")
?