简单的无限分类树

<?php
$d = array(
array( name=>‘公告‘,‘id‘=>1,‘pid‘=>0),
array( name=>‘文章‘,‘id‘=>2,‘pid‘=> 0),
array( name=>‘文章1‘,‘id‘=>3, ‘pid‘=>2),
array( name=>‘文章2‘,‘id‘=>4,‘pid‘=>2),
array( name=>‘文章1评论1‘,‘id‘=>5,‘pid‘=>3),
array( name=>‘文章2评论‘,‘id‘=>6,‘pid‘=>4),
array( name=>‘文章1评论2‘,‘id‘=>7,‘pid‘=>3),
array( name=>‘文章1评论1评论‘,‘id‘=>8,‘pid‘=>5),
);
function tree2(&$arr,$pid=0,$num=0){
foreach($arr as $k=>$v){
if($v[‘pid‘] == $pid){
echo str_repeat(‘&nbsp;‘,$num).$v[‘name‘].‘<br/>‘;
unset($arr[$k]);
tree2($arr,$v[‘id‘],$num+2);
}

}
}
tree2($d);
?>

时间: 2024-08-09 17:06:34

简单的无限分类树的相关文章

无限分类树操作

获取相应分类id的分类树: public static function getCategoryTree($id){ //$model=M('category'); if($id>0){ $obj=self::selectTable('category',array('id'=>$id),true);//$model->where(array('id'=>$id))->find(); if(!is_null($obj)){ $childList=self::selectTab

简单的无限分类中递归子栏目

<?php /* * 找子栏目 */ $area=array( array('id'=>1,'name'=>'中国','parent'=>0), array('id'=>2,'name'=>'广东','parent'=>1), array('id'=>3,'name'=>'深圳','parent'=>2), array('id'=>4,'name'=>'湖南','parent'=>1), array('id'=>5,'na

thinkphp 简单的无限分类实现

function getSonLists($upid=0,$space=''){ $icon = array( ' │', ' ├─', ' └─' ); //格式化的字符 $category_type = $this->category_type; $map['up_id'] = array('eq',$upid); // $map['id'] = array('neq',1); $lists = M('Category')->where($map)->field('id,catnam

数组无限分类树模型序列化

<?php $array = array( array('id'=>'1', 'name'=>'电子产品', 'parent_id'=>0), array('id'=>'2', 'name'=>'电脑', 'parent_id'=>1), array('id'=>'3', 'name'=>'笔记本', 'parent_id'=>2), array('id'=>'4', 'name'=>'台式电脑', 'parent_id'=>2

基于bootstrap-treeview做的一个漂亮的无限分类树层级联动菜单

2017年12月11日09:59:15 因为工作需要把原来的bootstrap-treeview做了一些小改动,方便后台开发人员使用 最终效果,看起来还行,但是其实不是特别友好对用户来说,但是对开发者人员来说足够了 "after_html": "<span class=\"button_z\"><button type=\"button\" class=\"btn btn btn-info btn-xs\&q

C#无限极分类树-创建-排序-读取 用Asp.Net Core+EF实现

今天做一个管理后台菜单,想着要用无限极分类,记得园子里还是什么地方见过这种写法,可今天找了半天也没找到,没办法静下心来自己写了: 首先创建节点类(我给它取名:AdminUserTree): 1 /// <summary> 2 /// 无限极节点类 3 /// </summary> 4 public class AdminUserTree 5 { 6 /// <summary> 7 /// 节点信息 8 /// </summary> 9 public int

C#无限极分类树-创建-排序-读取 用Asp.Net Core+EF实现之方法二:加入缓存机制

在上一篇文章中我用递归方法实现了管理菜单,在上一节我也提到要考虑用缓存,也算是学习一下.Net Core的缓存机制. 关于.Net Core的缓存,官方有三种实现: 1.In Memory Caching 我理解是在内容中实现,这种方法适用于单服务器的生产环境. 2.a Distributed Cache 分部式缓存实现. 3.Response Cache 这种方式我理解为客户端缓存. 今天我只用了第一种实现方法,内存中缓存,之所以用这种方法我是觉得我这里用缓存的初衷是为了减少访问数据库的次数,

创建无限极分类树型结构

先上效果图 顶级分类其实就是一级分类,二级分类也叫作一级分类的子分类,在这个基础上,子分类还可以拥有子分类,这样就构成了无限极分类. 接下来看具体实现的代码: 一.在控制器中按字段查询,查询出所有分类信息(id:该分类的ID值,cate_name:该分类的名称,pid:父ID,sorts:为显示标题顺序排序做准备,可不写.) 1 public function cate_display() 2 { 3 $cate = D('Cate'); 4 $field = array('id','cate_

java简单的无限极分类

这是一个比较简单的无限极分类,适用于各种编程语言. 这个原理是 一次性把数据库所有分类读取出来之后再根据pid来排序. 比较简单,好理解. public static List<Category> cates; private static List<Category> tmpCates = new ArrayList<Category>(); public static void main(String[] args) {     init();     List&l