这篇文章主要介绍了关于php中的无限极分类,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
1.首先无限极分类对应的表的结构
| cate_id | cate_name| parentid(默认0)| | -------- | -----: | :----: | | 1 | 键盘 | 0 | | 2 | 机械键盘 | 1 | | 3 | cherry键盘| 2 |
这里面能看出来cherry的parentid的值等于等于他上一级的cate_id,这也就是无限极分类的核心
2.无限分类功能就是把数据库中的数据从新排序
控制器下代码:
public function index(){
$cate = D('category')->catetree();
$this->assign('cate',$cate);
$this->display();
}这里$cate调用catetree()方法,那么下面我们对应的Model里面的代码
Model下的代码:public function catetree(){
$data = $this->select();
return $this->resort($data);
}首先查询对应category表里面的所有数据并return一个新的方法
立即学习“PHP免费学习笔记(深入)”;
本系统经过多次升级改造,系统内核经过多次优化组合,已经具备相对比较方便快捷的个性化定制的特性,用户部署完毕以后,按照自己的运营要求,可实现快速定制会费管理,支持在线缴费和退费功能财富中心,管理会员的诚信度数据单客户多用户登录管理全部信息支持审批和排名不同的会员级别有不同的信息发布权限企业站单独生成,企业自主决定更新企业站信息留言、询价、报价统一管理,分系统查看分类信息参数化管理,支持多样分类信息,
0
public function resort($data,$parentid=0,$level=0){
static $ret = array(); foreach ($data as $key => $v) {
if ($v['parentid']==$parentid) {
$v['level']=$level;
$ret[]=$v;
$this->resort($data,$v['cate_id'],$level+1);
}
} return $ret ;
}首先生成一个静态数组,然后把catetree()方法传过来的$data进行遍历,判断条件就是为了找到顶级那条数据。先把顶级那条数据保存到静态数组里面,然后在调用本身,并且把顶级栏目的id做为参数传出去。
这样一来$parentid=$v['cate_id']
最终无线分类的功能就做完了!
相关推荐:
以上就是php中的无限极分类的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号