php 无限分类 核心算法
请看下面的 核心算法 /* $arr (array)??型如: $arr2 (array) 排序后的结果 ,型如: $per_id? ?父类id ,从0开始, $lv? ? 层编号,??父类为 0, 子类以它的父类层编号加1,?? $i 循环计数器. function cate_arr($arr,&$arr2=array(),$per_id=0,$lv=0){ ??if ((bool)$arr) { } 数据库 分类cate 表中只需要3个基本字段, (‘cate_id’,’per_id’,’cate_name’), 使用方式: 从数据库表cate)中获取数组$arr??; $sql=’select * from cate ‘; cate_arr($arr,$arr2)??//使用cate_arr函数对$arr进行父->子排序, 并把排序后的结果赋值到 $arr2 中. 如果结合 smarty , 可以简单通过下面的演示看到排序后的效果 …… $tpl->display(‘cate.htm’); 执行后,页面显示的结果结构如: a c 或者按照实际的使用要求,对??$arr2 进行二次处理. 转载请注明作者 和出处,谢谢. 以上adodb +smarty 的例子, 本核心算法,只查询一次数据库, 并且只要3个字段名, 即可实现 父->子 排序 和 层次, 比现有很多php web 软件项目中使用的无限分类的实现方法 执行要快些. |
自由转载,转载请注明: 转载自WEB开发笔记 www.chhua.com
本文链接地址: 效率高的php无限分类算法 http://www.chhua.com/web-note967
评论