时间:2021-05-02
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框架无限级分类+递归的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#递归方法实现无限级分类显示效果。分享给大家供大家参考,具体如下:运行效果如下图所示:具体代码如下:C#无限级分类递归显示示例span{floa
无限级分类,主要是通过储存上级分类的id以及分类路径来实现。由于数据的结构简单,所以要将分类的关系由树状显示,我只能想到用递归的方式给于实现。无限级分类,主要是
不用递归实现无限级分类,简单测试了下性能比递归稍好一点点点,但写得太复杂了,还是递归简单方便点代码:?12345678910111213141516171819
在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性。那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无
话不多说,请看代码:/***无级递归分类TP框架*@paramint$assortPid要查询分类的父级id*@parammixed$tag上下级分类之间的分隔