PHP获取两个数组的小时数

时间:2016-08-10 02:19:11

标签: php multidimensional-array time sum

我有一个像下面这样的数组,里面有2个数组,它们有一个值,想要知道如何获得两个小时的总和,例如01:00 + 04:00 = 05:00

阵列:

Array
(
    [0] => stdClass Object
        (
            [total_time] => 01:00
        }
    [1] => stdClass Object
        (
            [total_time] => 04:00
        }
}
谢谢。

2 个答案:

答案 0 :(得分:0)

请按照以下步骤操作:

  • 循环数组;
  • HH:MM格式转换为this;
  • 之类的秒
  • 汇总所有转换秒数;
  • 将求和的秒数转换回HH:MM格式,如this

答案 1 :(得分:-1)

实现这一目标会有很多不同的方法。我更喜欢使用array_map从对象中获取值并转换值。对于array_sum来说,它应该很容易将它们加在一起。

$hours_array = array_map("get_hours", $array);
$results = array_sum($hours_array);

function get_hours($object) {
    // Check values first

    // For just hours.
    list($hours,) = explode(":", $object->{'total_time'});

    return $hours;
}