博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将树形结构的数组按照顺序遍历为二维数组
阅读量:5732 次
发布时间:2019-06-18

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

/** * 将树形结构的数组按照顺序遍历为二维数组 * renxing,2015年8月7日 11:06:47 */function arr_child ($array) { static $res; if (!is_array($array)) {  return false; } foreach ($array as $k=>$v) {  if (is_array($v) && isset($v['child'])) {   $child = $v['child']; //将这个数组的子节点赋给变量 $child   unset($v['child']); //释放这个数组的所有子节点   $res[] = $v; //将释放后的数组填充到新数组 $res   arr_child ($child); //递归处理释放前的包含子节点的数组  } else {   $res[] = $v;  } } return $res;}

【原数组结构】

 

 

【转换后的数组】

 


《附加:上面的树形结构数组怎么来的?》

/** * cateList * renxing,2015年8月6日 15:55:59 * 十分牛逼的算法By:http://www.oschina.net/code/snippet_173183_11767 */    public function cateListLg($list){     //先对数组基本的转换     $items = array();     foreach ($list as $k=>$v){     $items[$v['cate_id']] = $v;     }     //qq($items);      //将所有分类设置为无限级分类的形式     $tree = array(); //格式化好的树     foreach ($items as $item){     if (isset($items[$item['parent_id']])){     $items[$item['parent_id']]['child'][] = &$items[$item['cate_id']];     }else{     $tree[] = &$items[$item['cate_id']];     }     }          //qq($tree);     return $tree;    }

【代码截图】

 

 

【初始数据】

【select的结构】

 

【转换树形后的结构】----即:本文最上面的结构

 

 

 

 

转载于:https://www.cnblogs.com/rxbook/p/6008938.html

你可能感兴趣的文章
Android SD卡创建文件和文件夹失败
查看>>
Ubuntu 14.04 vsftp refusing to run with writable root inside chroot问题解决方法
查看>>
Intellij IDEA远程调试tomcat
查看>>
hadoop的学习论坛
查看>>
替代Windows Cmd的利器PowerCmd
查看>>
Struts2 学习小结
查看>>
Linux IPMI 安装配置实用
查看>>
烂泥:wordpress迁移到docker
查看>>
.扒渣机的性能及优势 
查看>>
Linux下磁盘保留空间的调整,解决df看到的空间和实际磁盘大小不一致的问题
查看>>
RSA 生成公钥、私钥对
查看>>
C# ASP.NET 权限设计 完全支持多数据库多语言包的通用权限管理系统组件源码
查看>>
测试工具综合
查看>>
asp.net中调用COM组件发布IIS时常见错误 80070005解决方案
查看>>
分享一段ios数据库代码,包括对表的创建、升级、增删查改
查看>>
如何书写高质量的jQuery代码
查看>>
Activity的生命周期整理
查看>>
【记录】JS toUpperCase toLowerCase 大写字母/小写字母转换
查看>>
在 Linux 系统中安装Load Generator ,并在windows 调用
查看>>
Visifire charts ToolBar
查看>>