如何将分钟转换为小时和分钟? E.g。
$dt = new DateTime();
$currDate = date_format($dt, 'Y-m-d');
$startMinutes = 939;
$startT = $currDate . " " . gmdate("H:i", $startMinutes);
此代码返回的内容类似于“2012-09-12 00:15”而不是15:...为什么?
答案 0 :(得分:7)
date和gmdate函数都将秒作为输入而不是分钟。所以你要做的就是将你的开始时间乘以60,以得到你的答案。
$startT = $currDate . " " . gmdate("H:i", ($startMinutes * 60));
答案 1 :(得分:6)
以下公式应该有效:
$hours = floor($minutes/60); //round down to nearest minute.
$minutes = $minutes % 60;
答案 2 :(得分:1)
非常快速的方法,这应该工作:
echo date('H:i', strtotime($startMinutes.' minutes'));
答案 3 :(得分:1)
$dt = new DateTime('now');
$dt->modify('+939 minutes');
echo $dt->format('Y-m-d H:i');
答案 4 :(得分:0)
试试这个..
$d = floor ($startMinutes / 1440);
$h = floor (($startMinutes - $d * 1440) / 60);
$m = $startMinutes - ($d * 1440) - ($h * 60);
echo "{$startMinutes}min converts to {$d}d {$h}h {$m}m";
你应该能够从那里拼凑起来..
答案 5 :(得分:0)
试试这个
function hour_min($minutes){
if($minutes == 0){return '';}else{
$hours = round(intval($minutes/60) , 2); //round down to nearest minute.
$minutes = $minutes % 60; return sprintf("%02d", $hours).':'.sprintf("%02d", $minutes);
}
}
echo hour_min(720); // 12:00
echo hour_min(480); // 08:00