php递归方法实现无限分类实例代码


Posted in PHP onFebruary 28, 2014

数组:

$items = array(
 array('id' => 1, 'pid' => 0, 'name' => '一级11' ),
 array('id' => 11, 'pid' => 0, 'name' => '3water.com 一级12' ),
 array('id' => 2, 'pid' => 1, 'name' => '二级21' ),
 array('id' => 10, 'pid' => 11, 'name' => '二级22' ),
 array('id' => 3, 'pid' => 1, 'name' => '二级23' ),
 array('id' => 12, 'pid' => 11, 'name' => '二级24' ),
 array('id' => 13, 'pid' => 12, 'name' => '三级31' ),
 array('id' => 9, 'pid' => 1, 'name' => '二级25' ),
);

函数:

function formatTree($array, $pid = 0){
 $arr = array();
 $tem = array();
 foreach ($array as $v) {
  if ($v['pid'] == $pid) {
   $tem = formatTree($array, $v['id']);
                        //判断是否存在子数组
   $tem && $v['son'] = $tem;
   $arr[] = $v;
  }
 }
 return $arr;
}
PHP 相关文章推荐
PHP如何透过ODBC来存取数据库
Oct 09 PHP
PHP URL地址获取函数代码(端口等) 推荐
May 15 PHP
PHP 正则表达式之正则处理函数小结(preg_match,preg_match_all,preg_replace,preg_split)
Oct 05 PHP
php中文验证码实现示例分享
Jan 12 PHP
php使用标签替换的方式生成静态页面
May 21 PHP
PHP弹出对话框技巧详细解读
Sep 26 PHP
composer.lock文件的作用
Feb 03 PHP
PHP创建/删除/复制文件夹、文件
May 03 PHP
thinkPHP5实现的查询数据库并返回json数据实例
Oct 23 PHP
Laravel学习教程之request validation的编写
Oct 25 PHP
PHP保留两位小数的几种方法
Jul 24 PHP
PHP设计模式概论【概念、分类、原则等】
May 01 PHP
PHP中常用的转义函数
Feb 28 #PHP
PHP中鲜为人知的10个函数
Feb 28 #PHP
php中调用其他系统http接口的方法说明
Feb 28 #PHP
PHP URL参数获取方式的四种例子
Feb 28 #PHP
php使用多个进程同时控制文件读写示例
Feb 28 #PHP
php使用curl抓取qq空间的访客信息示例
Feb 28 #PHP
php命名空间学习详解
Feb 27 #PHP
You might like
PHP5新特性: 更加面向对象化的PHP
2006/11/18 PHP
PHP验证码类代码( 最新修改,完全定制化! )
2010/12/02 PHP
PHP中使用smarty生成静态文件的例子
2014/04/24 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
2018/09/04 PHP
PHP匿名函数(闭包函数)详解
2019/03/22 PHP
php统计数组不同元素的个数的实例方法
2019/09/26 PHP
文字幻灯片
2006/06/26 Javascript
用js+xml自动生成表格的东西
2006/12/21 Javascript
javascript最常用与实用的创建类的代码
2010/08/12 Javascript
线路分流自动智能跳转代码,自动选择最快镜像网站(js)
2011/10/31 Javascript
js计算字符串长度包含的中文是utf8格式
2013/10/15 Javascript
jQuery is()函数用法3例
2014/05/06 Javascript
Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值
2016/03/23 Javascript
BootStrap下拉菜单和滚动监听插件实现代码
2016/09/26 Javascript
js实现页面刷新滚动条位置不变
2016/11/27 Javascript
JS作用域闭包、预解释和this关键字综合实例解析
2016/12/16 Javascript
JS对象是否拥有某属性如何判断
2017/02/03 Javascript
基于javascript的异步编程实例详解
2017/04/10 Javascript
vue.js移动端app之上拉加载以及下拉刷新实战
2017/09/11 Javascript
vue基于viewer实现的图片查看器功能
2019/04/12 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
vue框架制作购物车小球动画效果实例代码
2019/09/26 Javascript
Python中的生成器和yield详细介绍
2015/01/09 Python
Python的Flask开发框架简单上手笔记
2015/11/16 Python
用virtualenv建立多个Python独立虚拟开发环境
2017/07/06 Python
Python中Selenium模拟JQuery滑动解锁实例
2017/07/26 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
2017/09/08 Python
利用python实现逐步回归
2020/02/24 Python
Java Unsafe类实现原理及测试代码
2020/09/15 Python
HTML5的表单(绝对特别强大的功能)使用示例
2013/06/20 HTML / CSS
Blancsom美国/加拿大:服装和生活用品供应商
2018/07/27 全球购物
倡议书格式
2014/04/14 职场文书
艺术设计专业毕业生推荐信
2014/07/08 职场文书
电工实训心得体会
2016/01/14 职场文书
Javascript 解构赋值详情
2021/11/17 Javascript
js前端面试常见浏览器缓存强缓存及协商缓存实例
2022/06/21 Javascript