1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > php无限极分类生成分类树的实现方法介绍

php无限极分类生成分类树的实现方法介绍

时间:2021-02-24 06:21:43

相关推荐

php无限极分类生成分类树的实现方法介绍

后端开发|php教程

php,实现,生成

后端开发-php教程现在的分类数据库设计基本都是:每一个分类有一个id主键字段,一个pid指向父类的id,这样便可实现无限级分类,取出的数据就是如下的格式:

卓商站宝网站源码,ubuntu 命令 u盘,网络爬虫技术怎么,php版本windows,南宁seo建议lzw

$arr = array( array("id" => 1 , "pid" => 0 , cat => 栏目一), array("id" => 2 , "pid" => 0 , cat => 栏目二), array("id" => 3 , "pid" => 1 , cat => 栏目三), array("id" => 4 , "pid" => 2 , cat => 栏目四), array("id" => 5 , "pid" => 1 , cat => 栏目五), array("id" => 6 , "pid" => 5 , cat => 栏目六), array("id" => 7 , "pid" => 5 , cat => 栏目七), array("id" => 8 , "pid" => 6 , cat => 栏目八), array("id" => 9 , "pid" => 1 , cat => 栏目九), array("id" => 10 , "pid" => 0 , cat => 栏目十), array("id" => 11 , "pid" => 10 , cat => 栏目十一), array("id" => 12 , "pid" => 11 , cat => 栏目十二), array("id" => 13 , "pid" => 2 , cat => 栏目十三), array("id" => 14, "pid" => 13 , cat => 栏目十四));

不多说,直接上处理代码:

jsp 登录源码下载,vscode用户代码语法,ubuntu 平板 安装,无可用连接tomcat,蒲公英爬虫,jsp php性能,佛山seo外包价格费用,数据库电影网站模板下载,上海模板微信开发公司介绍lzw

//生成无限极分类树function make_tree($arr){ $refer = array(); $tree = array(); foreach($arr as $k => $v){ $refer[$v[id]] = & $arr[$k]; //创建主键的数组引用 } foreach($arr as $k => $v){ $pid = $v[pid]; //获取当前分类的父级id if($pid == 0){$tree[] = & $arr[$k]; //顶级栏目 }else{if(isset($refer[$pid])){ $refer[$pid][subcat][] = & $arr[$k]; //如果存在父级栏目,则添加进父级栏目的子栏目数组中} } } return $tree;}

测试运行:

淘源码网,vscode搜索不到中文,ubuntu指纹模块,安装tomcat8.0,sqlite不等于表达式,爬虫安居客二手房小区数据,php引用页面,如何选择seo服务外包,防伪网站模板,phpcms 模板 php代码lzw

$cat = make_tree($arr);print_r($cat);

运行结果:

Array( [0] => Array ([id] => 1[pid] => 0[cat] => 栏目一[subcat] => Array ([0] => Array ( [id] => 3 [pid] => 1 [cat] => 栏目三 )[1] => Array ( [id] => 5 [pid] => 1 [cat] => 栏目五 [subcat] => Array( [0] => Array ([id] => 6[pid] => 5[cat] => 栏目六[subcat] => Array ([0] => Array ( [id] => 8 [pid] => 6 [cat] => 栏目八 ) ) ) [1] => Array ([id] => 7[pid] => 5[cat] => 栏目七 )) )[2] => Array ( [id] => 9 [pid] => 1 [cat] => 栏目九 ) ) ) [1] => Array ([id] => 2[pid] => 0[cat] => 栏目二[subcat] => Array ([0] => Array ( [id] => 4 [pid] => 2 [cat] => 栏目四 )[1] => Array ( [id] => 13 [pid] => 2 [cat] => 栏目十三 [subcat] => Array( [0] => Array ([id] => 14[pid] => 13[cat] => 栏目十四 )) ) ) ) [2] => Array ([id] => 10[pid] => 0[cat] => 栏目十[subcat] => Array ([0] => Array ( [id] => 11 [pid] => 10 [cat] => 栏目十一 [subcat] => Array( [0] => Array ([id] => 12[pid] => 11[cat] => 栏目十二 )) ) ) ))

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。