Cách tốt nhất để tính tổng số giây giữa hai ngày là gì? Cho đến nay, tôi đã thử một cái gì đó dọc theo dòng:
$delta = $date->diff(new DateTime('now'));
$seconds = $delta->days * 60 * 60 * 24;
Tuy nhiên, thuộc days
tính của đối tượng DateInterval dường như bị hỏng trong bản dựng PHP5.3 hiện tại (ít nhất là trên Windows, nó luôn trả về cùng một 6015
giá trị). Tôi cũng đã cố gắng làm điều đó theo cách không bảo toàn được số ngày trong mỗi tháng (làm tròn đến 30), năm nhuận, v.v.:
$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);
Nhưng tôi thực sự không hài lòng với việc sử dụng giải pháp nửa vời này.
format
là khi nói số giây là 0 trong khi số phút là 1, $delta->format("%r%s")
hóa ra là 0 :(
$delta->format("%r%s")
gì?