php实现递归与无限分类的方法


Posted in PHP onFebruary 16, 2015

本文实例讲述了php实现递归与无限分类的方法,分享给大家供大家参考。具体实现方法如下:

<?php
echo "<pre>";
$area = array(
array('id'=>1,'area'=>'北京','pid'=>0),
array('id'=>2,'area'=>'广西','pid'=>0),
array('id'=>3,'area'=>'广东','pid'=>0),
array('id'=>4,'area'=>'福建','pid'=>0),
array('id'=>11,'area'=>'朝阳区','pid'=>1),
array('id'=>12,'area'=>'海淀区','pid'=>1),
array('id'=>21,'area'=>'南宁市','pid'=>2),
array('id'=>45,'area'=>'福州市','pid'=>4),
array('id'=>113,'area'=>'亚运村','pid'=>11),
array('id'=>115,'area'=>'奥运村','pid'=>11),
array('id'=>234,'area'=>'武鸣县','pid'=>21)
); 

function t($arr,$pid=0,$lev=0){
 static $list = array();
 foreach($arr as $v){
 if($v['pid']==$pid){
  echo str_repeat("  ",$lev).$v['area']."<br />";
  //这里输出,是为了看效果
  $list[] = $v;
  t($arr,$v['id'],$lev+1);
 } 
 }
 return $list;
}
$list = t($area);
echo "<hr >";
print_r($list);
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP无限分类代码,支持数组格式化、直接输出菜单两种方式
May 18 PHP
php模拟post行为代码总结(POST方式不是绝对安全)
Feb 22 PHP
php学习之function的用法
Jul 14 PHP
PHP扩展开发入门教程
Feb 26 PHP
Laravel 5框架学习之用户认证
Apr 09 PHP
PHP中调用C/C++制作的动态链接库的教程
Mar 10 PHP
Zend Framework教程之Application用法实例详解
Mar 14 PHP
PHP 获取 ping 时间的实现方法
Sep 29 PHP
PHP操作Redis数据库常用方法示例
Aug 25 PHP
PHP中$GLOBALS与global的区别详解
Mar 21 PHP
Laravel框架实现文件上传的方法分析
Sep 29 PHP
ThinkPHP5.1验证码功能实现的示例代码
Jun 08 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
Feb 16 #PHP
php数组添加与删除单元的常用函数实例分析
Feb 16 #PHP
PHP两种快速排序算法实例
Feb 15 #PHP
PHP批量查询WordPress留言者E-mail地址实现方法
Feb 15 #PHP
CentOS下PHP安装Oracle扩展
Feb 15 #PHP
PHPExcel读取EXCEL中的图片并保存到本地的方法
Feb 14 #PHP
php魔术函数__call()用法实例分析
Feb 13 #PHP
You might like
php base64 编码与解码实例代码
2017/03/21 PHP
php封装的mongodb操作类代码
2017/08/06 PHP
对YUI扩展的Gird组件 Part-2
2007/03/10 Javascript
javascript常用对话框小集
2013/09/13 Javascript
JavaScript类属性的访问方式详解
2014/02/11 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
Jquery Mobile 自定义按钮图标
2015/11/18 Javascript
基于jquery实现弹幕效果
2016/09/29 Javascript
AngularJS封装指令方法详解
2016/12/12 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
Vue.js仿Metronic高级表格(二)数据渲染
2017/04/19 Javascript
JavaScript实现的数字与字符串转换功能示例
2017/08/23 Javascript
javascript将list转换成树状结构的实例
2017/09/08 Javascript
JavaScript生成简单等差数列
2017/11/28 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
jQuery 点击获取验证码按钮及倒计时功能
2018/09/20 jQuery
js中的数组对象排序分析
2018/12/11 Javascript
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
2019/03/19 jQuery
python随机数分布random测试
2018/08/27 Python
PyCharm-错误-找不到指定文件python.exe的解决方法
2019/07/01 Python
Python 实现将大图切片成小图,将小图组合成大图的例子
2020/03/14 Python
简单了解python调用其他脚本方法实例
2020/03/26 Python
python 使用递归的方式实现语义图片分割功能
2020/07/16 Python
Python利用matplotlib绘制折线图的新手教程
2020/11/05 Python
Django数据统计功能count()的使用
2020/11/30 Python
windows系统Tensorflow2.x简单安装记录(图文)
2021/01/18 Python
阿迪达斯比利时官方商城:adidas比利时
2016/10/10 全球购物
鲜果饮品店创业计划书
2014/01/21 职场文书
《在大海中永生》教学反思
2014/02/24 职场文书
红领巾广播站广播稿
2014/10/19 职场文书
2014年部门工作总结
2014/11/12 职场文书
通知书大全
2015/04/27 职场文书
2016年第十九届推普周活动总结
2016/04/06 职场文书
2019运动会广播加油稿汇总
2019/08/21 职场文书
深入解析NumPy中的Broadcasting广播机制
2021/05/30 Python
为什么在foreach循环中JAVA集合不能添加或删除元素
2021/06/11 Java/Android