如何统计php数组中的重复值和计算金额
在php中,要统计数组中重复值的数量,可以使用 array_count_values() 函数。假设具有如下形式的数组 $array:
$array = [ ['price' => 100, 'org_name' => '部门1'], ['price' => 100, 'org_name' => '部门2'], ['price' => 200, 'org_name' => '部门2'], ['price' => 500, 'org_name' => '部门1'], ];
要统计 org_name 字段的重复值,可以使用以下代码:
$counts = array_count_values(array_column($array, 'org_name'));
这将生成以下 $counts 数组:
立即学习“PHP免费学习笔记(深入)”;
$counts = [ '部门1' => 2, '部门2' => 2, ];
接下来,为了计算每个部门的总金额,可以使用 foreach 循环:
$prices = []; foreach ($array as $item) { if (isset($prices[$item['org_name']])) { $prices[$item['org_name']] += $item['price']; } else { $prices[$item['org_name']] = $item['price']; } }
这将生成以下 $prices 数组:
$prices = [ '部门1' => 600, '部门2' => 300, ];
最后,可以合并 $counts 和 $prices 数组以生成所需的统计结果:
$results = []; foreach ($counts as $org_name => $count) { $results[$org_name] = [ 'count' => $count, 'price' => $prices[$org_name], ]; }
这将产生以下结果:
$results = [ '部门1' => ['count' => 2, 'price' => 600], '部门2' => ['count' => 2, 'price' => 300], ];
以上就是PHP数组统计:如何同时统计重复值数量并计算对应金额?的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号