CI框架无限级分类+递归的实现代码


Posted in PHP onNovember 01, 2016

CI是什么?

CodeIgniter是一个轻量级但功能强大的PHP框架,基于MVC设计模式,提供了一套丰富的类库,简单易学,高效实用。

下面看下CI框架无限级分类+递归的实现代码,具体代码如下所示:

//无级分类+递归
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框架无限级分类+递归的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
php利用curl抓取新浪微博内容示例
Apr 27 PHP
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
Jun 04 PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
Aug 19 PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
Sep 24 PHP
php学习笔记之基础知识
Nov 08 PHP
WordPress中is_singular()函数简介
Feb 05 PHP
php从完整文件路径中分离文件目录和文件名的方法
Mar 13 PHP
PHP生成静态HTML页面最简单方法示例
Apr 09 PHP
PHP多维数组转一维数组的简单实现方法
Dec 23 PHP
php socket通信简单实现
Nov 18 PHP
PHP关键特性之命名空间实例详解
May 06 PHP
PHP PDOStatement::errorCode讲解
Jan 31 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
Nov 01 #PHP
PHP之十六个魔术方法详细介绍
Nov 01 #PHP
php有效防止图片盗用、盗链的两种方法
Nov 01 #PHP
php 实现一个字符串加密解密的函数实例代码
Nov 01 #PHP
PHP+Ajax异步带进度条上传文件实例
Nov 01 #PHP
php 判断字符串编码是utf-8 或gb2312实例
Nov 01 #PHP
PHP用户验证和标签推荐的简单使用
Oct 31 #PHP
You might like
php中用socket模拟http中post或者get提交数据的示例代码
2013/08/08 PHP
PHP自动生成后台导航网址的最佳方法
2013/08/27 PHP
php二维码生成
2015/10/19 PHP
php导出生成word的方法
2015/12/25 PHP
php实现QQ小程序发送模板消息功能
2019/09/18 PHP
javascript[js]获取url参数的代码
2007/10/17 Javascript
JavaScript 学习笔记 Black.Caffeine 09.11.28
2009/11/30 Javascript
jQuery EasyUI API 中文文档 - TreeGrid 树表格使用介绍
2011/11/21 Javascript
深入理解javascript的执行顺序
2014/04/04 Javascript
JS动态增加删除UL节点LI及相关内容示例
2014/05/21 Javascript
jquery获取html元素的绝对位置和相对位置的方法
2014/06/20 Javascript
jQuery中:last选择器用法实例
2014/12/30 Javascript
Javascript this 函数深入详解
2016/12/13 Javascript
基于JS实现限时抢购倒计时间表代码
2017/05/09 Javascript
JavaScript中常见的八个陷阱总结
2017/06/28 Javascript
Vue 实现展开折叠效果的示例代码
2018/08/27 Javascript
详解React中传入组件的props改变时更新组件的几种实现方法
2018/09/13 Javascript
jstree中的checkbox默认选中和隐藏示例代码
2019/12/29 Javascript
echarts实现晶体球面投影的实例教程
2020/10/10 Javascript
vuex Module将 store 分割成模块的操作
2020/12/07 Vue.js
[01:38]DOTA2 2015国际邀请赛中国区预选赛 Showopen
2015/06/01 DOTA
[03:15]DOTA2-DPC中国联赛1月22日Recap集锦
2021/03/11 DOTA
python微信公众号开发简单流程
2018/03/23 Python
django中SMTP发送邮件配置详解
2019/07/19 Python
利用python-pypcap抓取带VLAN标签的数据包方法
2019/07/23 Python
python函数局部变量、全局变量、递归知识点总结
2019/11/15 Python
python 申请内存空间,用于创建多维数组的实例
2019/12/02 Python
python 使用opencv 把视频分割成图片示例
2019/12/12 Python
Python Numpy库常见用法入门教程
2020/01/16 Python
pytorch数据预处理错误的解决
2020/02/20 Python
python RSA加密的示例
2020/12/09 Python
纯CSS3实现3D旋转书本效果
2016/03/21 HTML / CSS
英文求职信范文
2014/05/23 职场文书
演讲稿的格式及范文
2014/08/22 职场文书
教师对照四风自我剖析材料
2014/09/30 职场文书
2014乡党委副书记党建工作汇报材料
2014/11/02 职场文书