如何添加此多维数组的所有值或通过其值将其转换为数组

时间:2010-03-13 17:36:33

标签: php arrays

阵列在这里:

数组([0] => 0)数组([0] => 0)数组([0] => 1 [1] => 6 [2] => 0)

3 个答案:

答案 0 :(得分:2)

echo array_sum(
    call_user_func_array('array_merge', $array)
);
//or
echo array_sum(
    array_map('array_sum', $array)
);

答案 1 :(得分:1)

使用递归。这将数组加到任何深度(忽略php强加的调用堆栈深度限制):

function sum_all($arr)
{
    $sum = 0;

    foreach ($arr as $val)
    {
        if (is_array($val))
            $sum += sum_all($val);
        else
            $sum += $val;
    }

    return $sum;
}

答案 2 :(得分:0)

我猜这三个数组实际上都是顶级数组的一部分,如下所示:

$array = array( array( 0 ), array( 1, 2, 3, 4 ), array( 5, 6 ) );

$sum = 0;
for ( $i = 0; $i < count( $array ); $i++ )
{
    $sum += array_sum( $array[$i] );
}