php用array_merge实现无限级分类
生活随笔
收集整理的這篇文章主要介紹了
php用array_merge实现无限级分类
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
<?php
$area = array(
array('id'=>1,'name'=>'河北','parent'=>0),
array('id'=>2,'name'=>'海淀','parent'=>7),
array('id'=>3,'name'=>'定州市','parent'=>5),
array('id'=>4,'name'=>'昌平','parent'=>7),
array('id'=>5,'name'=>'保定','parent'=>1),
array('id'=>6,'name'=>'朝陽(yáng)','parent'=>7),
array('id'=>7,'name'=>'北京','parent'=>0),
array('id'=>8,'name'=>'上地','parent'=>2)
);
function familyclass2($arr,$id) {
??? $tree = array();
?? ?foreach($arr as $v) {
?? ??? if($v['id']==$id) {
?? ??????? $tree[] = $v;
?? ??? ??? if($v['parent']>0) {
?? ??? ?? ?
?? ??? ????? $tree = array_merge($tree,familyclass2($arr,$v['parent']));
?? ??? ??? }
?? ??? }
?? ?}//foreach end
?? return $tree;
}
print_r(familyclass2($area,8));
?> 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
$area = array(
array('id'=>1,'name'=>'河北','parent'=>0),
array('id'=>2,'name'=>'海淀','parent'=>7),
array('id'=>3,'name'=>'定州市','parent'=>5),
array('id'=>4,'name'=>'昌平','parent'=>7),
array('id'=>5,'name'=>'保定','parent'=>1),
array('id'=>6,'name'=>'朝陽(yáng)','parent'=>7),
array('id'=>7,'name'=>'北京','parent'=>0),
array('id'=>8,'name'=>'上地','parent'=>2)
);
function familyclass2($arr,$id) {
??? $tree = array();
?? ?foreach($arr as $v) {
?? ??? if($v['id']==$id) {
?? ??????? $tree[] = $v;
?? ??? ??? if($v['parent']>0) {
?? ??? ?? ?
?? ??? ????? $tree = array_merge($tree,familyclass2($arr,$v['parent']));
?? ??? ??? }
?? ??? }
?? ?}//foreach end
?? return $tree;
}
print_r(familyclass2($area,8));
?> 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
總結(jié)
以上是生活随笔為你收集整理的php用array_merge实现无限级分类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解析PHP实现多进程并行执行脚本
- 下一篇: 动态规划算法php,php算法学习之动态