本文实例讲述了PHP+MySQL实现无极限分类栏目的方法。分享给大家供大家参考,具体如下:
一个非常简单清晰简单的无极限分类范例,带缩进效果,只需查询一次数据表,然后递归遍历结果集,就可以了,要在php中实现栏目缩进显示可以参考一下。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
$sql = 'select * from cat order by cat_id desc' ;
$list = $db ->getAll( $sql );
$list = getLevelCat( $list );
function getLevelCat( $catlist , $parent_id = '0' , $html = ' ' , $level = '0' ){
$arr = array ();
foreach ( $catlist as $val ){
if ( $val [ 'parent_id' ]== $parent_id ){
$val [ 'html' ] = str_repeat ( $html , $level );
$val [ 'level' ] = $level ;
$arr [] = $val ;
$arr = array_merge ( $arr , getLevelCat( $catlist , $val [ 'cat_id' ], $html , $level +1));
}
}
return $arr ;
}
|
实现效果图:
短短几行代码,比较清晰,也比较好用。
希望本文所述对大家PHP程序设计有所帮助。