php用array_merge实现无限级分类
生活随笔
收集整理的这篇文章主要介绍了
php用array_merge实现无限级分类
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
<?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'=>'朝阳','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位技术专家面对面20年技术见证,附赠技术全景图
$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'=>'朝阳','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位技术专家面对面20年技术见证,附赠技术全景图
总结
以上是生活随笔为你收集整理的php用array_merge实现无限级分类的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 解析PHP实现多进程并行执行脚本
- 下一篇: php中数组的数组元素最多出现2次,出现