[34]=>Array([sum]=>13[name]=>油区开发部[id]=>27[parentid]=>1[children]=>Array())[35]=>Array([sum]=>2[name]=>三分公司[id]=>31[parentid]=>1[children]=>Array([0]=>Array([sum]=>156[name]=>项目管理分中心[id]=>52[parentid]=>31[children]=>Array())[1]=>Array([sum]=>12[name]=>弯管机组[id]=>54[parentid]=>31[children]=>Array())[2]=>Array([sum]=>20[name]=>车队[id]=>53[parentid]=>31[children]=>Array())[3]=>Array([sum]=>10[name]=>维修机组[id]=>55[parentid]=>31[children]=>Array())[4]=>Array([sum]=>55[name]=>机关[id]=>51[parentid]=>31[children]=>Array())))[36]=>Array([sum]=>56[name]=>五分公司[id]=>32[parentid]=>1[children]=>Array())如何计算三分公司的sum值,是三分公司children下的所有sum的和
2 回答
一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
$arr=[['name'=>'三分公司','children'=>[['sum'=>156],['sum'=>12]]]];functiongetChildrenSum($children){$sum=0;if(is_array($children)){foreach($childrenas$item){$sum+=$item['sum'];if(isset($item['children'])){$sum+=getChildrenSum($item['children']);}}}return$sum;}$sum=array_reduce(array_filter($arr,function($item){return$item['name']==='三分公司';}),function($sum,$item){return$sum+getChildrenSum($item['children']);},0);echo$sum;
添加回答
举报
0/150
提交
取消