首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

树形展示分类

2013-03-06 
树形显示分类本帖最后由 bing15 于 2013-02-02 14:07:19 编辑从数据库中获取数据,以树形显示分类,如: 公告

树形显示分类
本帖最后由 bing15 于 2013-02-02 14:07:19 编辑 从数据库中获取数据,以树形显示分类,如:
 公告 
 文章
  -新文章
  -热文章

分类数据库的结构是:
id,reid,topid,title

id:分类id
reid:父类id
topid:顶级id
title:名称
我先给出一点数据吧,这样做起来方便些。
id reid topid title
1   0    0     公告
2   0    0     文章
3   2    2    新文章
4   2    2    热文章

记住:可能新文章里面还有小分类哦,无限级分类。
[解决办法]

<?
$arr = array(
     
    array('id'=>1,'city_name'=>'中国','rel_id'=>'1','pid'=>0),
    array('id'=>2,'city_name'=>'广东','rel_id'=>'1-2','pid'=>1),
    array('id'=>3,'city_name'=>'深圳','rel_id'=>'1-2-3','pid'=>2),
    array('id'=>4,'city_name'=>'广州','rel_id'=>'1-2-4','pid'=>2)
    
);
 
function find_subclass( $pid ){
     
    global $arr;
    $__arr = array();
    foreach ( $arr as $k=>$v )
    {
         
        if( $v['pid']==$pid )$__arr[] = $v;
         
    }
    return $__arr;
     
}
 
function tree_subclass($pid=0){
     
    $__arr = array();
    $__arr = find_subclass($pid);
    if( !empty($__arr) ){
         
        foreach ( $__arr as $k=>$v )
        {
 
            $__arr[$k]['subclass'] = tree_subclass($v['id']);
             
        }
         
    }
    return $__arr;
}
 
var_dump(tree_subclass(0));
 
?>

[解决办法]
引用:
我的数据怎么递归显示分类下的子分类呢
见http://bbs.csdn.net/topics/390364669

热点排行