2011-11-21 152 views

回答

5

Unix時間戳是若干秒。有每分鐘60秒,每小時60分鐘。所以要從秒轉換爲小時,除以60*60 = 3600

如果您需要分秒以及:

$timestamp = 169200; 

$secs = $timestamp%60; 
$mins = floor($timestamp/60); 
$hours = floor($mins/60); 
$mins = $mins%60; 

printf("%02d:%02d:%02d", $hours, $mins, $secs); 

http://ideone.com/gFKv2

+0

一個很好的應用程序經常不用的'printf' –

+0

太好了。但秒後有一個奇怪的數字(8)。改變printf到sprintf修復它:S很奇怪...... – Warface

+0

這可能是因爲我在'printf'前面加了一個'echo'。 'printf'返回打印字符串的長度,然後在打印後回顯。如果你刪除'echo','printf'應該很好。 – Kleist

0
$hours = $timestamp/3600; 

你可以使用floor()ceil()圓小時。