我正在计算变量的小时和分钟,但我想将其转换为十进制数
例如,1小时30分钟应显示为1.5和2小时15分钟显示为2.25
答案 0 :(得分:5)
这样的东西?
function convert($hours, $minutes) {
return $hours + round($minutes / 60, 2);
}
答案 1 :(得分:1)
$hrs = "2:15:0";
$decimalHours = decimal($hrs);
function decimal($time)
{
$hms = explode(":", $time);
return ($hms[0] + ($hms[1]/60) + ($hms[2]/3600));
}
echo $decimalHours;
试试此代码
答案 2 :(得分:1)
这很容易。除以60。
function convertMinutesToDecimal($minutes)
{
return $minutes / 60;
}
echo '15 mins is '.convertMinutesToDecimal(15)."\n";
echo '30 mins is '.convertMinutesToDecimal(30)."\n";
echo '45 mins is '.convertMinutesToDecimal(45)."\n";
输出:
15 mins is 0.25
30 mins is 0.5
45 mins is 0.75
答案 3 :(得分:0)
function time_to_float($time) {
$timeArr = explode(":", $time);
return $timeArr[0] + ($timeArr[1] / 60);
}
$time_str = "1:30";
$formatted = sprintf("%0.2f", time_to_float($time_str));
echo $formatted; // 1.50