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代码网站如何防范SQL注入漏洞攻击建议分享
Mar 01 PHP
使用ob系列函数实现PHP网站页面静态化
Aug 13 PHP
php中file_get_content 和curl以及fopen 效率分析
Sep 19 PHP
php中heredoc与nowdoc介绍
Dec 25 PHP
thinkphp利用模型通用数据编辑添加和删除的实例代码
Nov 20 PHP
php的4种常用运行方式详解
Dec 22 PHP
php使用crypt()函数进行加密
Jun 08 PHP
PHP实现限制IP访问及提交次数的方法详解
Jul 17 PHP
PHP后台实现微信小程序登录
Aug 03 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
Jun 03 PHP
laravel添加角色和模糊搜索功能的实现代码
Jun 22 PHP
一次项目中Thinkphp绕过禁用函数的实战记录
Nov 17 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控制网页过期时间的代码
2008/09/28 PHP
PHP array操作10个小技巧分享
2011/06/23 PHP
PHP读取数据库并按照中文名称进行排序实现代码
2013/01/29 PHP
深入探讨:Nginx 502 Bad Gateway错误的解决方法
2013/06/03 PHP
/etc/php-fpm.d/www.conf 配置注意事项
2017/02/04 PHP
FCK调用方法..
2006/12/21 Javascript
javascript 面向对象全新理练之原型继承
2009/12/03 Javascript
JavaScript 原型继承之构造函数继承
2011/08/26 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
2015/11/29 Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
2016/05/31 Javascript
VUE JS 使用组件实现双向绑定的示例代码
2017/01/10 Javascript
详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
2017/03/08 Javascript
layui表格实现代码
2017/05/20 Javascript
vueJs实现DOM加载完之后自动下拉到底部的实例代码
2018/08/31 Javascript
浅谈 Webpack 如何处理图片(开发、打包、优化)
2019/05/15 Javascript
详解VUE调用本地json的使用方法
2019/05/15 Javascript
vue调用语音播放的方法
2019/09/27 Javascript
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
JS倒计时两种实现方式代码实例
2020/07/27 Javascript
antd多选下拉框一行展示的实现方式
2020/10/31 Javascript
[42:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS OpTic
2018/03/31 DOTA
浅析python打包工具distutils、setuptools
2018/04/20 Python
python实现两张图片拼接为一张图片并保存
2019/07/16 Python
Python random模块制作简易的四位数验证码
2020/02/01 Python
vue学习笔记之动态组件和v-once指令简单示例
2020/02/29 Python
利用python清除移动硬盘中的临时文件
2020/10/28 Python
Python 爬虫批量爬取网页图片保存到本地的实现代码
2020/12/24 Python
HTML5+lufylegend实现游戏中的卷轴
2016/02/29 HTML / CSS
39美元购买一副眼镜或太阳镜:39DollarGlasses.com
2018/06/17 全球购物
德国家具、照明、家居用品网上商店:Wayfair.de
2020/02/13 全球购物
公司授权委托书格式范文
2014/10/02 职场文书
大学宣传委员竞选稿
2015/11/19 职场文书
2016年教师节感恩寄语
2015/12/04 职场文书
2016秋季运动会开幕词
2016/03/04 职场文书
迎客户欢迎词三篇
2019/09/27 职场文书
python图片灰度化处理的几种方法
2021/06/23 Python