亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

新手上路,無限極分類如何獲取每一極的后代數量,包括兒子和孫子求老司機指點!

新手上路,無限極分類如何獲取每一極的后代數量,包括兒子和孫子求老司機指點!

慕工程0101907 2019-10-25 20:24:42
例如:`$items=array(0=>array('id'=>0,'pid'=>-1,'name'=>'中國'),1=>array('id'=>1,'pid'=>0,'name'=>'安徽省'),2=>array('id'=>2,'pid'=>0,'name'=>'浙江省'),3=>array('id'=>3,'pid'=>1,'name'=>'合肥市'),4=>array('id'=>4,'pid'=>3,'name'=>'長豐縣'),5=>array('id'=>5,'pid'=>1,'name'=>'安慶市'),);`我想得到`$items=array(0=>array('id'=>0,'pid'=>-1,'name'=>'中國','num'=>'后代數量'),1=>array('id'=>1,'pid'=>0,'name'=>'安徽省','num'=>'后代數量'),2=>array('id'=>2,'pid'=>0,'name'=>'浙江省','num'=>'后代數量'),3=>array('id'=>3,'pid'=>1,'name'=>'合肥市','num'=>'后代數量'),4=>array('id'=>4,'pid'=>3,'name'=>'長豐縣','num'=>'后代數量'),5=>array('id'=>5,'pid'=>1,'name'=>'安慶市','num'=>'后代數量'),);`如果是生成樹之后的,只要有后代數量也行,謝謝各位大神了
查看完整描述

2 回答

?
開滿天機

TA貢獻1786條經驗 獲得超13個贊

不會PHP,盡量寫的像PHP:
1、對原始數據按照pid做一個分類,得到一個pid=>items的對象:pidItems,可以用數組的reduce方法,PHP應該也有的,代碼:
var$pidItems=array_reduce($items,function($res,$item){
$res[$item['pid']]=$res[$item['pid']]||array();
array_push($res[$item['pid']],$item);
return$res;
},array());
2、遍歷原始數據,執行$item['num']=$pidItems[$item['pid']].count;
                            
查看完整回答
反對 回復 2019-10-25
  • 2 回答
  • 0 關注
  • 320 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號