博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php部分,一个用递归无限分类的方法
阅读量:5293 次
发布时间:2019-06-14

本文共 1585 字,大约阅读时间需要 5 分钟。

1,'parentid'=>0,'name'=>'中国'); $data[]=array('id'=>2,'parentid'=>0,'name'=>'美国'); $data[]=array('id'=>3,'parentid'=>0,'name'=>'韩国'); $data[]=array('id'=>4,'parentid'=>1,'name'=>'北京'); $data[]=array('id'=>5,'parentid'=>1,'name'=>'上海'); $data[]=array('id'=>6,'parentid'=>1,'name'=>'广西'); $data[]=array('id'=>7,'parentid'=>6,'name'=>'桂林'); $data[]=array('id'=>8,'parentid'=>6,'name'=>'南宁'); $data[]=array('id'=>9,'parentid'=>6,'name'=>'柳州'); $data[]=array('id'=>10,'parentid'=>2,'name'=>'纽约'); $data[]=array('id'=>11,'parentid'=>2,'name'=>'华盛顿'); $data[]=array('id'=>12,'parentid'=>3,'name'=>'首尔'); $tree=build_tree($data,0); print_r($tree); function findChild($arr,$id){ $childs=array(); //定义一个数组 foreach ($arr as $k => $v){ //把父级二维数组遍历 if($v['parentid']== $id){ //判断子集的parentid的值是不是等于父级id的值 $childs[]=$v; //如果等于把这个子集交给变量数组$childs } } return $childs; //返回符合条件的所有子集} function build_tree($rows,$root_id){ //$root_id父级代号 $childs=findChild($rows,$root_id); if(empty($childs)){ return null; } foreach ($childs as $k => $v){ //遍历符合父级id值的数组 $rescurTree=build_tree($rows,$v['id']); //把子集再遍历,如果有子集就交给$rescurTree if( null != $rescurTree){ $childs[$k]['childs']=$rescurTree; //把子集的子集交给$childs[$k]['childs'],['childs']是自定义的一个键值
} } return $childs; } ?>

 

 

转载于:https://www.cnblogs.com/xingyue1988/p/6233122.html

你可能感兴趣的文章
TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>
Spark基础脚本入门实践3:Pair RDD开发
查看>>
HDU4405--Aeroplane chess(概率dp)
查看>>
CS0103: The name ‘Scripts’ does not exist in the current context解决方法
查看>>
20130330java基础学习笔记-语句_for循环嵌套练习2
查看>>
Spring面试题
查看>>
窥视SP2010--第一章节--SP2010开发者路线图
查看>>
MVC,MVP 和 MVVM 的图示,区别
查看>>
C语言栈的实现
查看>>
代码为什么需要重构
查看>>
TC SRM 593 DIV1 250
查看>>
SRM 628 DIV2
查看>>
2018-2019-2 20165314『网络对抗技术』Exp5:MSF基础应用
查看>>
统计单词,字符,和行
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
模运算
查看>>
python多线程的使用
查看>>
使用Chrome(PC)调试移动设备上的网页
查看>>