我对PHP很新颖我需要帮助实现PHP中的总小时数和分钟数。需要帮助在PHP中实现总小时数,分钟数和秒数
我有以小时,分钟的时间在PHP阵列和秒
(array) Array
(
[0] => 01:10:00
[1] => 01:20:30
[2] => 00:00:10
)
我的预期的输出应在小时,分钟和秒的总时间(例如:二时30分四十秒)
我对PHP很新颖我需要帮助实现PHP中的总小时数和分钟数。需要帮助在PHP中实现总小时数,分钟数和秒数
我有以小时,分钟的时间在PHP阵列和秒
(array) Array
(
[0] => 01:10:00
[1] => 01:20:30
[2] => 00:00:10
)
我的预期的输出应在小时,分钟和秒的总时间(例如:二时30分四十秒)
$hours;
$minutes;
$seconds;
foreach($thatArray as $v)
{
$subArray = explode(':', $v);
$hours += $subArray[0];
$minutes += $subArray[1];
$seconds += $subArray[2];
}
// output $hours/$minutes/$seconds, correctly formatting, etc
最简单的方法可能是将它们全部转换为秒表示,将它们相加并将它们转换回来。例如:
function timeToSeconds($time) {
$parts = explode(':', $time);
return $parts[0] * 3600 + $parts[1] * 60 + $parts[2];
}
function secondsToTime($seconds) {
$hours = floor($seconds/3600);
$minutes = floor($seconds/60) % 60;
$seconds %= 60;
return str_pad($hours, 2, '0', STR_PAD_LEFT) . ':' . str_pad($minutes, 2, '0', STR_PAD_LEFT) . ':' . str_pad($seconds, 2, '0', STR_PAD_LEFT);
}
$times = array('01:10:00', '01:20:30', '00:00:10');
$total = secondsToTime(array_sum(array_map('timeToSeconds', $times)));
感谢您的时间 – jalf 2012-04-08 03:37:14
@jalf:没问题,不要忘记你可以点击旁边的向上箭头,以你的答案,奖励采用点响应,并选择检查在你认为最有用的答案旁边。 – Josh 2012-04-08 05:00:30