可能重复:
How do I format an amount of milliseconds into minutes:seconds:milliseconds in PHP?
在PHP中,我需要帮助将一个字符串转换为百分之一到“minutes:seconds.hundredths”。
例如,如果我有这个:'10420'并想要显示它:01:44.20。
我玩了一些php date(),但我无法让它工作。
任何想法?
答案 0 :(得分:3)
呃,这个简单的数学在今天出了什么问题?
$start=10420;//Or whatever... your example value
$hs=$start%100;//Hundredths
$start-=$hs;
$m=floor($start/6000);//Minutes
$start-=$m*6000;
$s=$start/100;//Seconds
echo "It's $m:$s.$hs;"
显然,在函数中写得更好......但是你明白了。
答案 1 :(得分:0)
像这样(应该是不言自明的):
$hundreds = 10420;
$secs = intval($hundreds / 100);
$frac = $hundreds - $secs * 100;
echo gmdate("i:s", $secs).sprintf(".%02d", $frac), "\n";
您的要求很有趣,因为您似乎想要忽略小时部分。
如果需要,您仍然可以使用gmdate("H:i:s", $secs)
将其添加回来。当然,这也适用于24小时。
答案 2 :(得分:0)
在以下代码中尝试此更改:
$start=10420;//Or whatever... your example value
$hs=$start%100;//Hundredths
$start-=$hs;
$m=floor($start/6000);//Minutes
$start-=$m*6000;
$s=$start/100;//Seconds
$m = sprintf("%02s",$m);
echo "It's $m:$s:$hs";