3

重複の可能性:
PHPで秒を日、時間、分、秒に
変換する小数を時間に変換する方法。HH:MM:SS

ここで行っているのは、SQL からタイムスタンプを取得しstrtotime()て秒に変換した後、投稿時間を UTC として mysql に保存し、これらの秒にオフセット時間を追加して現在の現地時間を表示することです。ここでの問題は、これらの秒を時間に再変換しようとするときです。たとえば、

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

時間に再変換すると、5.30 ではなく 5.50 が表示されます

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

数式が間違っていることはわかっています。明確な説明で助けていただければ幸いです。

4

1 に答える 1

0

最もエレガントなソリューションではありませんが、これは機能します:

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

または、これはおそらくモジュラスを使用する方が良いでしょう:

$hours = floor(19800 / 60 / 60);
$minutes = (19800 / 60) % 60;
于 2012-09-04T18:42:43.710 に答える