返回

无限极分类php实现—查子孙树、家谱树

发布时间:2022-10-21 07:17:22 302
# php

// 无限级分类中,查家谱树

$area = array(

0=>array('cat_id'=>1,'cat_name'=>'北京市','parent_id'=>0),

1=>array('cat_id'=>2,'cat_name'=>'馆陶县','parent_id'=>5),

2=>array('cat_id'=>3,'cat_name'=>'海淀区','parent_id'=>1),

3=>array('cat_id'=>4,'cat_name'=>'朝阳区','parent_id'=>1),

4=>array('cat_id'=>5,'cat_name'=>'邯郸市','parent_id'=>6),

5=>array('cat_id'=>6,'cat_name'=>'河北省','parent_id'=>0),

);

 

function gettree($arr,$cat_id) {

static $list = array();

static $num = 0;

foreach($arr as $v) {

echo ++$num .'
';

if($v['cat_id'] == $cat_id) {

$num = 0;

gettree($arr,$v['parent_id']);

$list[] = $v;

}

}

return $list;

}

$list = gettree($area,2);

print_r($list);

?>

// 无限级分类中,查找子孙树

$area = array(

0=>array('cat_id'=>1,'cat_name'=>'北京市','parent_id'=>0),

1=>array('cat_id'=>2,'cat_name'=>'馆陶县','parent_id'=>5),

2=>array('cat_id'=>3,'cat_name'=>'海淀区','parent_id'=>1),

3=>array('cat_id'=>4,'cat_name'=>'朝阳区','parent_id'=>1),

4=>array('cat_id'=>5,'cat_name'=>'邯郸市','parent_id'=>6),

5=>array('cat_id'=>6,'cat_name'=>'河北省','parent_id'=>0),

);

 

function catsort($arr,$parent_id = 0,$lev=1) {

static $list = array();

static $num = 0;

foreach($arr as $v) {

echo ++$num . '
';

if($v['parent_id'] == $parent_id) {

$num = 0;

$v['lev'] = $lev;

$list[] = $v;

catsort($arr,$v['cat_id'],$lev+1);

}

}

return $list;

}

 

$list = catsort($area,0,1);

 

foreach($list as $v) {

echo str_repeat('    ',$v['lev']),$v['cat_name'],'
';

}

?>

 

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
2016年04月18日 2022-10-21 06:37:29