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中文URL编解码(urlencode()rawurlencode()
Jul 03 PHP
php页面消耗内存过大的处理办法
Mar 18 PHP
PHP多线程批量采集下载美女图片的实现代码(续)
Jun 03 PHP
PHP中__FILE__、dirname与basename用法实例分析
Dec 01 PHP
php采集自中央气象台范围覆盖全国的天气预报代码实例
Jan 04 PHP
一个简单安全的PHP验证码类、PHP验证码
Sep 24 PHP
php+redis实现多台服务器内网存储session并读取示例
Jan 12 PHP
php删除txt文件指定行及按行读取txt文档数据的方法
Jan 30 PHP
thinkPHP5.0框架开发规范简介
Mar 25 PHP
浅谈PHP中的面向对象OOP中的魔术方法
Jun 12 PHP
利用laravel搭建一个迷你博客实战教程
Aug 13 PHP
基于PHP实现解密或加密Cloudflar邮箱保护
Jun 24 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
PHP设计模式之调解者模式的深入解析
2013/06/13 PHP
使用jQuery清空file文件域的解决方案
2013/04/12 Javascript
基于jQuery选择器的整理集合
2013/04/26 Javascript
jQuery的slideToggle方法实例
2013/05/07 Javascript
jquery遍历数组与筛选数组的方法
2013/11/05 Javascript
如何获取网站icon有哪些可行的方法
2014/06/05 Javascript
JavaScript利用append添加元素报错的解决方法
2014/07/01 Javascript
AngularJs实现ng1.3+表单验证
2015/12/10 Javascript
javascript正则表达式总结
2016/02/29 Javascript
下一代Bootstrap的5个特点 超酷炫!
2016/06/17 Javascript
jquery表单提交带错误信息提示效果
2017/03/09 Javascript
利用jquery去掉时光轴头尾部线条的方法实例
2017/06/16 jQuery
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
jQuery代码优化方法总结
2018/01/29 jQuery
Bootstrap模态对话框中显示动态内容的方法
2018/08/10 Javascript
JavaScript中join()、splice()、slice()和split()函数用法示例
2018/08/24 Javascript
用Fundebug插件记录网络请求异常的方法
2019/02/21 Javascript
微信小程序 slot踩坑的解决
2019/04/01 Javascript
jQuery实现数字华容道小游戏(实例代码)
2020/01/16 jQuery
在Chrome DevTools中调试JavaScript的实现
2020/04/07 Javascript
让你30分钟快速掌握vue3教程
2020/10/26 Javascript
[02:26]2016国际邀请赛8月3日开战 中国军团出征西雅图
2016/08/02 DOTA
[01:06:30]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第二场 1月9日
2021/03/11 DOTA
python实现数据预处理之填充缺失值的示例
2017/12/22 Python
关于django 数据库迁移(migrate)应该知道的一些事
2018/05/27 Python
python map比for循环快在哪
2020/09/21 Python
python基于exchange函数发送邮件过程详解
2020/11/06 Python
Fanatics英国官网:美国体育电商
2018/11/06 全球购物
英国国家美术馆商店:National Gallery
2019/05/01 全球购物
shell程序中如何注释
2012/01/28 面试题
领导检查欢迎词
2014/01/14 职场文书
幼儿园教师培训方案
2014/02/04 职场文书
施工材料员岗位职责
2014/02/12 职场文书
cf搞笑广告词
2014/03/14 职场文书
三好学生主要事迹怎么写
2015/11/03 职场文书
2019最新企业员工考勤管理制度(通用版)!
2019/07/02 职场文书