php递归实现无限级分类
2016-06-13 11:29
721 查看
<?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 subtree($arr,$id=0) {
static $subs = array();
foreach($arr as $k=>$v) {
if($v['parent'] == $id) {
$subs[] = $v;
subtree($arr,$v['id']);
}
}
return $subs;
}
print_r(subtree($area,0,1));
?>
$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 subtree($arr,$id=0) {
static $subs = array();
foreach($arr as $k=>$v) {
if($v['parent'] == $id) {
$subs[] = $v;
subtree($arr,$v['id']);
}
}
return $subs;
}
print_r(subtree($area,0,1));
?>
相关文章推荐
- PHP is_array() 检测变量是否是数组的实现方法
- win7下iis7.5配置php7
- PHP中的print_r 与 var_dump 输出数组
- 由于缺少调试目标,无法开始调试。请生成项目并重试,或者相应的设置OutputPath和AssemblyName属性,使其指向目标程序集的正确位置。
- 修改ftp密码
- PHP命名空间(Namespace)的使用详解
- PHP中使用foreach()遍历二维数组的简单实例
- PHP 数组基本操作小结(推荐)
- php总结二
- phpStudy(lnmp)集成环境安装
- ContentProvider和Uri详解
- php回溯
- 数组函数---array_key_exists
- editplus网上收集的一些实用方法--持续更新中
- FTP文件传输协议
- laravel整合mews captcha验证码的时候只出现两条边框,没有文字和背景图片
- BZOJ_1778_[Usaco2010_Hol]_Dotp_驱逐猪猡_(期望动态规划+高斯消元+矩阵)
- php多进程学习
- PHP开源网
- PHP之——安装配置Xdebug模块详解