php递归循环地区
$mylist = array(
array( 'area_parent_id'=>0,'id'=>1,'area_name' => '河北',),
array( 'area_parent_id'=>0,'id'=>2,'area_name' => '山东',),
array( 'area_parent_id'=>0,'id'=>3,'area_name' => '辽宁',),
array( 'area_parent_id'=>2,'id'=>4,'area_name' => '济南',),
array( 'area_parent_id'=>2,'id'=>5,'area_name' => '德州',),
array( 'area_parent_id'=>3,'id'=>6,'area_name' => '沈阳',),
array( 'area_parent_id'=>3,'id'=>7,'area_name' => '大连',),
array( 'area_parent_id'=>4,'id'=>8,'area_name' => '济南县1',),
array( 'area_parent_id'=>5,'id'=>9,'area_name' => '德州县1',),
array( 'area_parent_id'=>5,'id'=>10,'area_name' => '德州县2',)
); $arr = array (
1 => array ( 'area_name' => '河北', 'area_parent_id' => '0', ),
2 => array ( 'area_name' => '山东', 'area_parent_id' => '0', ),
3 => array ( 'area_name' => '石家庄','area_parent_id' => '1',),
4 => array ( 'area_name' => '唐山','area_parent_id' => '1'),
5 => array ( 'area_name' => '济南','area_parent_id' => '2'),
6 => array ( 'area_name' => '青岛','area_parent_id' => '2'),
); function moreList($arr, $p_id){ //数据层级化,
$r = array();
foreach($arr as $key=>$val){
if($val['area_parent_id'] == $p_id) {
$length = count($r);//
$r[$length] = $val; if($t = moreList($arr,$val['id'])){//$key
$r[$length]['children'] = $t;
} }
}
return $r;
}
echo '<pre>';
print_r(moreList($mylist,0));//$arr
echo '</pre>';
php递归循环地区的更多相关文章
- c# 使用递归 循环遍历导航树结构 并解析
1.数据书库结构 1 家用电器 0 一级菜单 2 手机.数码.京东通信 0 一级菜单 3 电脑.办公 0 一级菜单 4 家具.家居.厨房 0 一级菜单 5 男装.女装.童装.内衣 0 一级菜单 6 个 ...
- vue 树状图数据的循环 递归循环
在main.js中注册一个子组件 在父组件中引用 树状图的数据格式 绑定一个数据传入子组件,子组件props接收数据 子组件中循环调用组件,就实现了递归循环
- C# TreeView,递归循环数据加载到treeView1中
TblAreaBLL bll = new TblAreaBLL(); private void button1_Click(object sender, EventArgs e) { LoadData ...
- C# ASP.NET递归循环生成嵌套json结构树
1. 建立用来保存树结构数据的目标对象 public class TreeObject { public string name { get; set; } public string value { ...
- 【剑指offer】递归循环两种方式反转链表
转载请注明出处:http://blog.csdn.net/ns_code/article/details/25737023 本文分别用非递归和递归两种方式实现了链表的反转,在九度OJ上AC. 题目描写 ...
- 递归循环JSON
using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary ...
- python实现满二叉树递归循环
一.二叉树介绍点这片文章 二叉树及题目介绍 例题: 有一颗满二叉树,每个节点是一个开关,初始全是关闭的,小球从顶点落下, 小球每次经过开关就会把它的状态置反,这个开关为关时,小球左跑,为开时右跑.现在 ...
- winform 递归循环阻止机构
private void GetTree() { DataTable dt = new DataTable(); var sql = @" select OUID,ParentOUID,OU ...
- T-SQL with关键字 with as 递归循环表
)SET @OrgId = N'901205CA-6C22-4EE7-AE4B-96CC7165D07F'; WITH Childs AS ( SELECT * FROM HROrgRelation ...
随机推荐
- JS-禁止移动端长按页面后弹出“在浏览器打开”这个菜单
阻止浏览器的touchstart事件 document.addEventListener('touchstart', function(e) { e.preventDefault(); ...
- js-斐波那切数列
f(1) = 1; f(2) = 1; f(3) = f(1) + f(2) = 2; f(4) = f(3) + f(2) = 3; f(5) = f(4) + f(3) = 5; f(6) = f ...
- Java 界面编程【03】事件监听
当你把界面都设计好了,总需要添加相应的执行动作给组件,在JAVA中有相应的时间处理机制,叫做“监听器”,给组件添加相应执行动作的过程叫做“注册”,其中的“监听器”是一个接口,里面包含了相应的执行函数, ...
- 结构体和类中属性定义需要static地方
private function Readxxx:Integer;static; public class property XXX:Integer read ReadXXx; Txxx =recor ...
- openfire Android学习(三)----会议室创建、加入以及查询会议室中所有成员等
openfire 中的会议室不像QQ群一样,不能保存那些离线用户,加入会议室后,一旦断开连接,就会离开会议室. 虽然如此,但如果要实现也不是不可能,我们可以自己做后台来保存,有兴趣的可以去试着实现一下 ...
- Opencv 改进的外接矩形合并拼接方法
上一篇中的方法存在的问题是矩形框不够精确,而且效果不能达到要求 这里使用凸包检测的方法,并将原来膨胀系数由20缩小到5,达到了更好的效果 效果图: 效果图: 代码: #include <open ...
- XmlNode与XmlElement的区别总结
原文链接:http://www.cnblogs.com/oilsun/archive/2012/07/07/2580427.html 今 天在做ASP.NET操作XML文档的过程中,发现了两个类:Xm ...
- who命令
who1.c #include <stdio.h>#include <utmp.h>#include <fcntl.h>#include <unistd.h& ...
- PA-RISC
http://baike.baidu.com/view/167703.htm PA-RISC处理器 编辑 HP(惠普)公司的RISC芯片PA-RISC于1986年问世. 第一款芯片的型号为PA-8 ...
- [转] git clone 远程分支
git clone只能clone远程库的master分支,无法clone所有分支,解决办法如下: 找一个干净目录,假设是git_work cd git_work git clone http://my ...