CI是什么?
CodeIgniter是一个轻量级但功能强大的PHP框架,基于MVC设计模式,提供了一套丰富的类库,简单易学,高效实用。
下面看下CI框架无限级分类+递归的实现代码,具体代码如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
//无级分类+递归
public function digui(){
$crr = $this ->db->get( 'category' )->result_array();
$list [ 'type' ] = $this ->nolimit( $crr ,0,0);
$this ->load->view( 'list1' , $list );
}
public function nolimit( $crr , $p_id , $level ){
static $arr = array ();
foreach ( $crr as $v ){
if ( $v [ 'parent_id' ]== $p_id ){
$v [ 'level' ] = $level ;
$arr [] = $v ;
$this ->nolimit( $crr , $v [ 'cat_id' ], $level +1);
}
}
return $arr ;
}
<td><?PHP echo str_repeat ( ' ' , $val [ 'level' ])?><?php echo $val [ 'cat_name' ]?></td>
//获取1级、2级、3级分类
public function sel_child( $p_id ){
$arr = $this ->sel_son( $p_id );
foreach ( $arr as $k => $v ){
$tmp = $this ->sel_son( $v [ 'cat_id' ]);
foreach ( $tmp as $kk => $vv ){
$tmp2 = $this ->sel_son( $vv [ 'cat_id' ]);
$tmp [ $kk ][ 'childs' ] = $tmp2 ;
}
$arr [ $k ][ 'child' ] = $tmp ;
}
return $arr ;
}
//通过ID获取所有的下级分类
public function sel_son( $id ){
$this ->db->where( "parent_id=$id" );
return $this ->db->get(self:: $cate )->result_array();
}
//渲染展示主页模板
public function lists(){
$p_id = 0;
$brr [ 'type' ] = $this ->Home_model->sel_child( $p_id );
$brr [ 'list' ] = $this ->db->get( 'goods' )->result_array();
$this ->load->view( 'Home/list.html' , $brr );
}
<?php foreach ( $type as $v ){?>
<li id= "cat_1" class = "" >
<h3><a href= "" ><?php echo $v [ 'cat_name' ]?></a></h3>
<?php foreach ( $v [ 'child' ] as $vv ){?>
<dl class = "clearfix" >
<dt><a href= "" ><?php echo $vv [ 'cat_name' ]?></a></dt>
<?php foreach ( $vv [ 'childs' ] as $vvv ){?>
<a href= "" ><?php echo $vvv [ 'cat_name' ]?></a>
<?php }?>
</dl>
<?php }?>
</li>
<?php }?>
|
以上所述是小编给大家介绍的CI框架无限级分类+递归的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!