php 一维数组对应key相加

//一维数组对应key相加

        function arrayAdd(...$array_item) {
            $array=array();
            foreach ($array_item as $item){
                $array=array_merge($array,$item);
            }
            foreach ($array as $key=>&$val){
                $val=0;
                foreach ($array_item as $item){
                    $val+=$item[$key]??0;
                }
            }
            return  $array;
        }

$array_item 为不固定参数,array_item1,和array_item2可以不全是相同的key,不值必须是数字

    $a=array('a'=>1,'b'=>2,'c'=>5);
    $b=array('a'=>1,'b'=>2,'d'=>10);
    $c=arrayAdd($a,$b);

输出为:

Array
(
    [a] => 2
    [b] => 4
    [c] => 5
    [d] => 10
)