小时和分钟列表计算总小时数和分钟数

时间:2018-05-19 17:50:20

标签: php codeigniter

有没有办法计算php中的小时和分钟总数;

我有

$hours = array(
    'abc' => '02:30','def' => '02:40','efg' => '01:32'
);

计算开始时间和结束时间的时间是02:30 m,得到分钟并转换成分钟意味着如果2小时则是240分钟。

需要使用php计算小时数和分钟数。

我在“:”中使用它们进行爆炸并添加小时和分钟,如果它大于60,则添加1到几小时,但是在excel表中创建报告并且没有显示正确的代码时,代码中存在错误时间。

最后使用日期显示数据('H:i',mktime(0,240));

2 个答案:

答案 0 :(得分:0)

尝试strtotime()功能:

$time = strtotime('2:30');

它将返回时间戳,可用于单独添加它们。

答案 1 :(得分:0)

使用mktime()date()而不是自己格式化分钟和小时更容易(也更可靠):

$items = array(
    'abc' => '02:30','def' => '02:40','efg' => '01:32'
);

$minutes = 0;
foreach ($items as $item) {
    [$hour, $minute] = explode(':', $item, 2);
    $minutes += 60 * $hour + $minute;
}

return str_pad(floor($minutes / 60), 2, '0', STR_PAD_LEFT) 
    . ':' . str_pad($minutes % 60, 2, '0', STR_PAD_LEFT);
对于超过24小时的范围,

date()mktime()将失败,并且在涉及DTS时可能无法预测。