我想要顯示當前時間與未來時間之間剩餘的時間(以小時爲單位):分鐘:秒(將日期轉換爲小時)。日期時間差+將日期轉換爲小時
# Current time.
$current_datetime=new DateTime();
# Time in future.
$future_time=new DateTime('2015-09-30 05:59:38');
# Get difference.
$interval=$current_datetime->diff($future_time);
# Format time (this does not convert days to hours).
//$duration=$interval->format('%H:%I:%S');
後,我認爲我可以這樣做:
$duration=sprintf('%02d:%02d:%02d', $interval->days * 24 + $interval->H, $interval->i, $interval->s);
但是,這不正常。它顯示00:27:27
。分鐘和秒是正確的,但它顯示00小時。
你能告訴你預期的輸出是什麼嗎? –
您是否在第二種方法中嘗試了$ interval-> h而不是$ interval-> H?屬性名稱在PHP中區分大小寫。 – pamelus
小時檢查($ interval-> days * 24)+($ interval-> H)。只是一個建議 –