-2

我有这样的数组

[1001] => 数组
        (
            [0] => 500
        )

    [1204] => 数组
        (
            [0] => 750
        )

    [1202] => 数组
        (
            [0] => 0
            [1] => 10000
            [2] => 138456
        )

    [1203] => 数组
        (
            [0] => 300
        )



)

我希望像这样对新输出的键中的数组的每个元素求和

[1001] => 数组
        (
            [0] => 500
        )
[1204] => 数组
        (
            [0] => 750
        )
[1202] => 数组
        (
            [0] => 148456

        )
[1203] => 数组
        (
            [0] => 300
        )





)

谢谢 !

4

2 回答 2

1

您可以使用array_map应用于array_sum数组的每个元素:

$sum_array = array_map(function ($v) { return array_sum($v); }, $array);
print_r($sum_array);

3v4l.org 上的演示

于 2019-04-28T09:45:20.103 回答
0

您可以使用下面的代码。祝你好运!

    $data=[
        1001 => [ 500],1024 => [750],1202 =>[0,10000,138456],1203=>[300]
    ];


    foreach($data as $key => $value){

            if(count($data[$key]) > 1){
                    $data[$key]=array_sum($data[$key]);
            }else{
                $data[$key] =$data[$key];
            }

    }
于 2019-04-28T18:31:47.883 回答