
如何统计php数组中的重复值并计算重复次数和金额
您希望对提供的php数组进行统计,包括统计每个部门的重复次数和产生的总金额。该数组如下所示:
array( [0] => array ( [price] => 100 [org_name] => '部门1' ) [1] => array ( [price] => 100 [org_name] => '部门2' ) [2] => array ( [price] => 200 [org_name] => '部门2' ) [3] => array ( [price] => 500 [org_name] => '部门1' ))
解决方法:
统计重复次数:
使用 array_count_values() 函数来统计数组中每个元素的 org_name 值的重复次数。
立即学习“PHP免费学习笔记(深入)”;
$counts = array_count_values(array_column($array, 'org_name'));
例如,上述数组的 $counts 数组如下所示:
array( ['部门1'] => 2 ['部门2'] => 2)
计算总金额:
遍历数组并根据每个元素的 org_name 值累加对应的 price 值。
$prices = array();foreach ($array as $item) { if (isset($prices[$item['org_name']])) { $prices[$item['org_name']] += $item['price']; } else { $prices[$item['org_name']] = $item['price']; }}
例如,上述数组的 $prices 数组如下所示:
array( ['部门1'] => 600 ['部门2'] => 300)
合并结果:
遍历 $counts 数组,并根据其值创建新数组,其中包含统计结果。
$results = array();foreach ($counts as $org_name => $count) { $results[$org_name] = array( 'count' => $count, 'price' => $prices[$org_name] );}
例如,上述数组的 $results 数组如下所示:
Array( ['部门1'] => Array ( ['count'] => 2 ['price'] => 600 ) ['部门2'] => Array ( ['count'] => 2 ['price'] => 300 ))
这样,你就可以获得每个部门的重复次数和产生的总金额的统计结果。
以上就是如何用PHP统计数组中部门的重复次数及对应金额?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1251173.html
微信扫一扫
支付宝扫一扫