欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

什么是无限极分类

程序员文章站 2022-03-26 17:38:00
...

要实现无限极分类,数据库建表是关键。

表结构中至少需要三个字段,如果想避免递归循环,那么需要四个字段。

1. id ,当前数据的唯一标识;

2. typename ,类型名称;

3. parentid , 当前类型的上一层父类型的id;

4. path , 其中存储当前类型的id和它所有父级类型的id。

这些id之间采用“-”隔开。

5. 当通过以下sql语句就可以实现,相同*类下的信息都在一起集中显示。

select * from 表名 where 条件 order by path;

例如:

一个非常简单清晰简单的无极限分类范例,带缩进效果,只需查询一次数据表,然后递归遍历结果集,就可以了,要在php中实现栏目缩进显示可以参考一下。

$sql = 'select * from cat order by cat_id desc';
$list = $db->getAll($sql);
$list = getLevelCat($list);
function getLevelCat($catlist, $parent_id='0', $html='   ', $level='0'){
  $arr = array();
  foreach($catlist as $val){
    if($val['parent_id']==$parent_id){
      $val['html'] = str_repeat($html,$level);
      $val['level'] = $level;
      $arr[] = $val;
      $arr = array_merge($arr, getLevelCat($catlist, $val['cat_id'], $html, $level+1));
    }
  }
  return $arr;
}

短短几行代码,比较清晰,也比较好用。

相关推荐:

PHP实现无限极分类函数的方法

如何创建无限极分类树型结构

以上就是什么是无限极分类的详细内容,更多请关注其它相关文章!