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截取utf-8中文字符串乱码的解决方法
Mar 29 PHP
php cookies中删除的一般赋值方法
May 07 PHP
CodeIgniter中实现泛域名解析
Jul 19 PHP
php生成随机颜色的方法
Nov 13 PHP
PHP实现懒加载的方法
Mar 07 PHP
PHP中curl_setopt函数用法实例分析
Apr 16 PHP
简单谈谈php延迟静态绑定
Jan 26 PHP
PHP表单数据写入MySQL数据库的代码
May 31 PHP
php使用imagecopymerge()函数创建半透明水印
Jan 25 PHP
PDO::lastInsertId讲解
Jan 29 PHP
PHP中quotemeta()函数的用法讲解
Apr 04 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
Apr 02 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
批量修改RAR文件注释的php代码
2010/11/20 PHP
将word转化为swf 如同百度文库般阅读实现思路及代码
2013/08/09 PHP
显示程序执行时间php函数代码
2013/08/29 PHP
ThinkPHP 3.2 数据分页代码分享
2014/10/14 PHP
PHP面向对象程序设计OOP继承用法入门示例
2016/12/27 PHP
详解使用php调用微信接口上传永久素材
2017/04/11 PHP
PHP大文件分块上传功能实例详解
2019/07/22 PHP
如何实现浏览器上的右键菜单
2006/07/10 Javascript
js获取变量
2006/08/24 Javascript
关于js new Date() 出现NaN 的分析
2012/10/23 Javascript
js遍历td tr等html元素
2012/12/13 Javascript
js从10种颜色中随机取色实现每次取出不同的颜色
2013/10/23 Javascript
jquery解析xml字符串示例分享
2014/03/25 Javascript
IE6/IE7中JavaScript json提示缺少标识符、字符串或数字问题处理
2014/12/16 Javascript
JS实现为排序好的字符串找出重复行的方法
2016/03/02 Javascript
浏览器兼容的JS写法总结
2016/04/27 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
JavaScript注册时密码强度校验代码
2017/06/30 Javascript
jQuery选择器之表单元素选择器详解
2017/09/19 jQuery
React Native中导航组件react-navigation跨tab路由处理详解
2017/10/31 Javascript
JQuery实现table中tr上移下移的示例(超简单)
2018/01/08 jQuery
详解webpack编译速度提升之DllPlugin
2019/02/05 Javascript
Vue+Koa2 打包后进行线上部署的教程详解
2019/07/31 Javascript
微信内置开发 iOS修改键盘换行为搜索的解决方案
2019/11/06 Javascript
vue+element获取el-table某行的下标,根据下标操作数组对象方式
2020/08/07 Javascript
[01:00:26]Ti4主赛事胜者组第一天 EG vs NEWBEE 1
2014/07/19 DOTA
Django之模型层多表操作的实现
2019/01/08 Python
Python截图并保存的具体实例
2021/01/14 Python
哈萨克斯坦移动和数字技术在线商店:SatelOnline.kz
2020/09/04 全球购物
Linux Interview Questions For software testers
2013/05/17 面试题
Python是如何进行类型转换的
2013/06/09 面试题
离婚协议书应该怎么写
2014/10/12 职场文书
2014年残联工作总结
2014/11/21 职场文书
MySql学习笔记之事务隔离级别详解
2021/05/12 MySQL
django学习之ajax post传参的2种格式实例
2021/05/14 Python
修改MySQL的数据库引擎为INNODB的方法
2021/05/26 MySQL