2012-09-04 530 views
3

可能重複:
Convert seconds into days, hours, minutes, seconds in PHP
How to convert a decimal into time, eg. HH:MM:SS轉換秒的時間保留兩位小數

什麼,我這裏做的是我現在的儲蓄帖子時間在MySQL UTC,取回後從sql的時間戳我用strtotime()轉換成秒,然後加偏移時間到這些秒顯示當前的本地時間。現在,這裏的問題是,當我嘗試將這些秒重新轉換成小時,比方說

$seconds = 330*60 //Thats 5.30 hours and 60 seconds gives me 19800 as an output 
現在

,當我再改回時間的顯示我5.50,而不是5.30

sprintf ("%.2f", 19800/60/60); //Output of 5.50 instead I want is 5.30 

我知道這是一個數學表達式做錯了,任何幫助,將不勝感激與一個乾淨的解釋。

+0

但[330分鐘以小時(HTTP://www.wolframalpha。 com/input /?i = 330 +分鐘+到+小時)?? 5小時30分鐘!= 5.30小時 – sachleen

+1

如果您在腳本中設置了適當的時區,則您完全不需要執行該轉換 – Gordon

+0

我希望輸出爲5.30而不是5.50 –

回答

0

不是最完美的解決方案,但這個工程:

$original = (19800/60/60); 
$hours = floor($original); 
$minutes = ($original - $hours) * 60; 

或者,這可能是更好的使用彈性模量:

$hours = floor(19800/60/60); 
$minutes = (19800/60) % 60; 
+0

哈哈不錯,這是好的,比這更好的解決方案?或者你會得到一個綠色的勾號.. –

相關問題