我的多维数组代码如下:
$arr = array(
array('id'=>7363,'fd'=>1,'fb'=>1,'tcp'=>0,'fbdh'=>1,'jxs'=>'GZYX'),
array('id'=>7412,'fd'=>1,'fb'=>0,'tcp'=>1,'fbdh'=>1,'jxs'=>'GZYX'),
array('id'=>7512,'fd'=>1,'fb'=>1,'tcp'=>0,'fbdh'=>1,'jxs'=>'GZYX'),
array('id'=>7516,'fd'=>1,'fb'=>0,'tcp'=>1,'fbdh'=>0,'jxs'=>'BJCJ'),
);
//意思就是数组里面jxs 相同 他们的fd,fb,tcp,fbdh相加
//如何把上面数组变成下面的结果
//结果:
GZYX 3 2 1 3
BJCJ 1 0 1 0
立即学习“PHP免费学习笔记(深入)”;
----------解决方案------------
立即学习“PHP免费学习笔记(深入)”;
<?php
$arr = array(
array('id'=>7363,'fd'=>1,'fb'=>1,'tcp'=>0,'fbdh'=>1,'jxs'=>'GZYX'),
array('id'=>7412,'fd'=>1,'fb'=>0,'tcp'=>1,'fbdh'=>1,'jxs'=>'GZYX'),
array('id'=>7512,'fd'=>1,'fb'=>1,'tcp'=>0,'fbdh'=>1,'jxs'=>'GZYX'),
array('id'=>7516,'fd'=>1,'fb'=>0,'tcp'=>1,'fbdh'=>0,'jxs'=>'BJCJ'),
);
$result = [];
foreach ($arr as $a) {
if (empty($result[$a['jxs']])) {
$result[$a['jxs']] = $a;
} else {
foreach ($a as $k => $v) {
$result[$a['jxs']][$k] += $v;
}
}
}
foreach ($result as $k => $r) {
echo sprintf("%s %d %d %d %d\n",
$k, $r['fd'], $r['fb'], $r['tcp'], $r['fbdh']);
}
立即学习“PHP免费学习笔记(深入)”;
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号