php怎么创建无限极分类树型结构
发表于:2024-11-18 作者:千家信息网编辑
千家信息网最后更新 2024年11月18日,这篇文章主要介绍"php怎么创建无限极分类树型结构",在日常操作中,相信很多人在php怎么创建无限极分类树型结构问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"php怎么
千家信息网最后更新 2024年11月18日php怎么创建无限极分类树型结构
这篇文章主要介绍"php怎么创建无限极分类树型结构",在日常操作中,相信很多人在php怎么创建无限极分类树型结构问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"php怎么创建无限极分类树型结构"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
先上效果图
顶级分类其实就是一级分类,二级分类也叫作一级分类的子分类,在这个基础上,子分类还可以拥有子分类,这样就构成了无限极分类。
接下来看具体实现的代码:
一、在控制器中按字段查询,查询出所有分类信息(id:该分类的ID值,cate_name:该分类的名称,pid:父ID,sorts:为显示标题顺序排序做准备,可不写。)
public function cate_display() { $cate = D('Cate'); $field = array('id','cate_name','pid','sorts'); $list = $cate->allCategory($field); $this->assign('list',$list); $this->display(); }
二、模型中的代码
在对应控制器的模型中创建两个方法
1.查询所有分类信息,并调用生成分类树方法:
public function allCategory($field='*'){ $data = $this->field($field)->select(); return $this->tree($data); }
2.生成分类树(使用递归,传进去数据,以及pid[父类id],level[层数,用来控制显示的-数量]两个变量,初始值为零)
public function tree($data,$pid=0,$level=0){ static $tree = array(); foreach($data as $k=>$v){ if($v['pid'] == $pid){ $v['level'] = $level; $tree[]=$v; $this->tree($data,$v['id'],$level+1); } } return $tree; }
三、视图文件中的代码
这样,一个可以无限递归的分类树形结构就完成了,总结:核心思想还是模型中的递归函数,先传进去pid默认为零,以后每次递归传入的pid就是上级的id,level用来记录递归层数,最后在视图页面显示时,调用PHP内置函数str_repeat(),用来重复输出'-'以达到输出时区分级数的效果。
到此,关于"php怎么创建无限极分类树型结构"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
分类
结构
递归
学习
代码
方法
模型
控制
查询
上级
两个
信息
函数
就是
控制器
效果
更多
菜单
视图
顶级
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
租车软件开发
大连养老软件开发
长城飞腾服务器 bios
肇庆java软件开发培训
安徽服务器机柜价格表
服务器光模块生产公司
长沙移动设备管理软件开发
数据库什么时候不用索引
忻州网络技术培训
警察网络安全员专业课
使用数据库为什么要关防火墙
保定市乐无限网络技术有限公司
数据库事务规定
大学生网络安全展板
jdbc如何引入数据库驱动
苹果音频服务器
微软轻量应用服务器
数据库 唯一 怎么定义
科技向善怎么推动互联网产业
汤姆森创新数据库
华为的信息安全与网络安全
pc媒体服务器干嘛用的
网络安全知识进入社区活动
天镇网络安全质量服务
v2x车载终端软件开发
网络安全演讲稿 税务
统计字数传到数据库
广州市的互联网科技公司
数据库 安全 备份
数据库bigdata