如何比较 2 个嵌套索引长度?

How do I compared 2 nested index lengths?

第一次在这里发帖,尽量按照提问指南,如有遗漏请见谅。

我在 PHP 中得到了一个多维数组,但结果数量不同。 Array[0] 包含 6 而 Array[1] 只包含 4。这是一个例子:

Array
(
    [0] => Array
        (
            [0] => 122.7799987793
            [1] => 121.95999908447
            [2] => 121.90000152588
            [3] => 122.94000244141
            [4] => 122.18000030518
            [5] => 119.7200012207
        )

    [1] => Array
        (
            [0] => 37.705001831055
            [1] => 37.759998321533
            [2] => 37.889999389648
            [3] => 38.520000457764
        )

)

我使用以下代码设法对这 2 个多维数组求和:

$finalresult = array();

foreach($newarray[0] as $k => $v){
        $finalresult[$k] = array_sum(array_column($newarray, $k));  
}

所以我的结果是:

Array
(
    [0] => Array
        (
            [0] => 160.4850006104
            [1] => 159.719997406
            [2] => 159,7900009155
            [3] => 161,4600028992
            [4] => 122.18000030518
            [5] => 119.7200012207
        )

)

因此 SUM 对于前 4 个值工作正常,但最后两个值与模式不匹配。

我想要实现的目标: 在我的数据库中,我得到了每个数组的平均数。所以基本上我希望 array_sum 做的是:

array[0] + array[0]
array[1] + array[1]
array[2] + array[2]
array[3] + array[3]
array[4] + AVERAGE_VAR
array[5] + AVERAGE_VAR

总而言之:我正在努力实现具有较少值的数组被我从 MySQL 数据库中提取的 average_variable_number 填充。

我尝试了一些东西,但我无法理解它。我已经搜索了几天,但没有任何运气或我必须研究的提示。

希望有人可以向我展示 foreach 函数实现上述目标的示例。

提前百万感谢!!!

如果总是只有2个数组,可以循环到较长的长度,然后测试该元素是否存在于两个数组中,将不存在的元素替换为默认值。

$len = max(count($newarray[0]), count($newarray[1]));
for ($i = 0; $i < len; $i++) {
    $val1 = array_key_exists($i, $newarray[0]) ? $newarray[0][$i] : $default;
    $val2 = array_key_exists($i, $newarray[1]) ? $newarray[1][$i] : $default;
    $finalresult[$i] = $val1 + $val2;
}