PHP: 90分钟显示为1.5小时
PHP: display 90 min as 1.5 hours
分钟=90
需要以小时显示
echo intdiv($ct['time'], 60).'.'. ($ct['time'] % 60)." Hours";
输出是 1:30 小时。
但我需要显示为 1.5 小时。
如何将分钟转换为小时?如1.5、1.6、1.7、1.8、1.9、2小时等。
添加此代码。
首先添加小时和分钟,然后我添加了舍入函数,因此它会显示正确的输出,最多 2 位小数。
$小时=1; $分钟=30; $CalculateHours = $hours + round($minutes / 60, 2);回显 $CalculateHours 。 “小时数”;
结果:1.5 小时
我同意所有关于显示 1h20
比显示 1.33 hours
更清晰的评论。您可以将其四舍五入并显示 1 h and ½
或 1 hour and ¼
,但仍然不容易阅读。
如果你想遵守工作时间,那么你可以这样做:
$min = $cat['prepration_time'];
if ($min < 60) {
echo $min == 1 ? "$min minute" : "$min minutes";
}
else {
$hours = round($min / 60, 1);
echo $hours == 1 ? "$hours hour" : "$hours hours";
}
输出示例:
1 minute
20 minutes
50 minutes
1 hour
1.2 hours
1.5 hours
1.7 hours
您似乎有一个存储分钟数的变量,在您的例子中是 $cat['prepration_time']
。要将分钟输出为十进制小时,您真正需要做的就是将分钟数除以 60,即一小时中的分钟数。在你的情况下是
echo $cat['preparation_time'] / 60 . ' hours';
为了避免像1.33333333333 hours
这样尴尬的结果,你可以额外将计算包裹在round中,其中round
的第二个参数是精度,即后面的位数点.
$minutes = 77;
echo round($minutes / 60, 2) . ' hours'; // 1.28 hours
但是请注意,这种格式的可读性很差并且容易引起误解。 1.30 hours
是指 1 hour and 30 minutes
还是 1 hour and 18 minutes
?虽然您可能能够在脑海中转换 1.30 hours
,但您肯定需要一个计算器来计算 1.283 hours
。我建议使用一种普遍理解且明确的格式,例如 1 hour and 32 minutes
或 1:32 hours
.
分钟=90 需要以小时显示
echo intdiv($ct['time'], 60).'.'. ($ct['time'] % 60)." Hours";
输出是 1:30 小时。
但我需要显示为 1.5 小时。 如何将分钟转换为小时?如1.5、1.6、1.7、1.8、1.9、2小时等。
添加此代码。
首先添加小时和分钟,然后我添加了舍入函数,因此它会显示正确的输出,最多 2 位小数。
$小时=1; $分钟=30; $CalculateHours = $hours + round($minutes / 60, 2);回显 $CalculateHours 。 “小时数”;
结果:1.5 小时
我同意所有关于显示 1h20
比显示 1.33 hours
更清晰的评论。您可以将其四舍五入并显示 1 h and ½
或 1 hour and ¼
,但仍然不容易阅读。
如果你想遵守工作时间,那么你可以这样做:
$min = $cat['prepration_time'];
if ($min < 60) {
echo $min == 1 ? "$min minute" : "$min minutes";
}
else {
$hours = round($min / 60, 1);
echo $hours == 1 ? "$hours hour" : "$hours hours";
}
输出示例:
1 minute
20 minutes
50 minutes
1 hour
1.2 hours
1.5 hours
1.7 hours
您似乎有一个存储分钟数的变量,在您的例子中是 $cat['prepration_time']
。要将分钟输出为十进制小时,您真正需要做的就是将分钟数除以 60,即一小时中的分钟数。在你的情况下是
echo $cat['preparation_time'] / 60 . ' hours';
为了避免像1.33333333333 hours
这样尴尬的结果,你可以额外将计算包裹在round中,其中round
的第二个参数是精度,即后面的位数点.
$minutes = 77;
echo round($minutes / 60, 2) . ' hours'; // 1.28 hours
但是请注意,这种格式的可读性很差并且容易引起误解。 1.30 hours
是指 1 hour and 30 minutes
还是 1 hour and 18 minutes
?虽然您可能能够在脑海中转换 1.30 hours
,但您肯定需要一个计算器来计算 1.283 hours
。我建议使用一种普遍理解且明确的格式,例如 1 hour and 32 minutes
或 1:32 hours
.