php - 如何在PHP中将多个数组平均为一个?

标签 php arrays

假设我有 4 个数组,每个数组的值数量相同:

$array1 = array(0, 7, 5, 0);
$array2 = array(2, 6, 10, 0);
$array3 = array(4, 8, 15, 10);
$array4 = array(6, 7, 20, 10);
我想为每个索引计算所有 4 个数组的平均值。所以我应该得到这样的东西:
array(3, 7, 12.5, 5);

最佳答案

对于更动态的使用,例如 6 个或更多数组,您可以使用以下代码:

$all_arrays = [
    array(0, 7, 5, 0),
    array(2, 6, 10, 0),
    array(4, 8, 15, 10),
    array(6, 7, 20, 10),
    array(1, 2, 3, 4),
    array(5, 6, 7, 8),
    // more arrays
];

$each_array_count = count($all_arrays[0]); // 4
$all_arrays_count = count($all_arrays); // 6

$output = [];

for ($i = 0; $i < $each_array_count; $i++) {
    for ($j=0; $j < $all_arrays_count; $j++) { 
        $output[$i] += $all_arrays[$j][$i] / $all_arrays_count;        
    }
}

echo "<pre>";
var_dump($output);

关于php - 如何在PHP中将多个数组平均为一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66160633/

相关文章:

php - 在 php-activerecord 中使用 `query()` 方法的查询在迁移时是否有效?

PHP类系统: Change Image Attribute on Displayed Listing if Record is within User Favorites(pivot table)

php - Yii2:如何使用 AJAX 验证表单,然后再次使用 AJAX 提交数据

c - 尝试在不使用函数的情况下在 C 中将大写字符转换为小写字符

c - 为每种打印方式使用一个函数?

php - 此MYSQL Insert语句中的语法错误是什么?

php - 将模型 Codeigniter 转换为 MySQL 查询

c - 'Empty' C 数组的解释(int a = {};)

arrays - 在 Cosmos DB 中查询嵌套数组

javascript - 如何用另一个对象的键更改对象的键