php简单实现无限分类树形列表的方法


Posted in PHP onMarch 27, 2015

本文实例讲述了php简单实现无限分类树形列表的方法。分享给大家供大家参考。具体如下:

$items = array( 
  1 => array('id' => 1, 'pid' => 0, 'name' => '江西省'), 
  2 => array('id' => 2, 'pid' => 0, 'name' => '黑龙江省'),
  3 => array('id' => 3, 'pid' => 1, 'name' => '南昌市'), 
  4 => array('id' => 4, 'pid' => 2, 'name' => '哈尔滨市'),
  5 => array('id' => 5, 'pid' => 2, 'name' => '鸡西市'), 
  6 => array('id' => 6, 'pid' => 4, 'name' => '香坊区'), 
  7 => array('id' => 7, 'pid' => 4, 'name' => '南岗区'), 
  8 => array('id' => 8, 'pid' => 6, 'name' => '和兴路'), 
  9 => array('id' => 9, 'pid' => 7, 'name' => '西大直街'), 
  10 => array('id' => 10, 'pid' => 8, 'name' => '东北林业大学'),
  11 => array('id' => 11, 'pid' => 9, 'name' => '哈尔滨工业大学'),
  12 => array('id' => 12, 'pid' => 8, 'name' => '哈尔滨师范大学'),
  13 => array('id' => 13, 'pid' => 1, 'name' => '赣州市'), 
  14 => array('id' => 14, 'pid' => 13, 'name' => '赣县'), 
  15 => array('id' => 15, 'pid' => 13, 'name' => '于都县'), 
  16 => array('id' => 16, 'pid' => 14, 'name' => '茅店镇'), 
  17 => array('id' => 17, 'pid' => 14, 'name' => '大田乡'), 
  18 => array('id' => 18, 'pid' => 16, 'name' => '义源村'), 
  19 => array('id' => 19, 'pid' => 16, 'name' => '上坝村'), 
  20 => array('id' => 20, 'pid' => 0, 'name' => '广东省'), 
  21 => array('id' => 21, 'pid' => 20, 'name' => '广州市'),
); 
$t = array(); 
foreach ($items as $id => $item) { 
  if ($item['pid']) { 
    $items[$item['pid']][$item['id']] = &$items[$item['id']];
    $t[] = $id; 
  } 
} 
foreach($t as $u) { 
  unset($items[$u]); 
} 
echo "<pre>"; 
print_r($items);

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

PHP 相关文章推荐
在IIS上安装PHP4.0正式版
Oct 09 PHP
PHP取得一个类的属性和方法的实现代码
May 22 PHP
使ecshop模板中可引用常量的实现方法
Jun 02 PHP
php中如何同时使用session和cookie来保存用户登录信息
Jul 05 PHP
PHP中VC6、VC9、TS、NTS版本的区别与用法详解
Oct 26 PHP
codeigniter发送邮件并打印调试信息的方法
Mar 21 PHP
CodeIgniter针对数据库的连接、配置及使用方法
Mar 03 PHP
php抽奖概率算法(刮刮卡,大转盘)
Apr 17 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
Feb 19 PHP
Yii redis集合的基本使用教程
Jun 14 PHP
php并发加锁问题分析与设计代码实例讲解
Feb 26 PHP
PHP调用.NET的WebService 简单实例
Mar 27 #PHP
PHP输出日历表代码实例
Mar 27 #PHP
使用php转义输出HTML到JavaScript
Mar 27 #PHP
PHP输出九九乘法表代码实例
Mar 27 #PHP
jQuery获取json后使用zy_tmpl生成下拉菜单
Mar 27 #PHP
PHP5.3以上版本安装ZendOptimizer扩展
Mar 27 #PHP
使用GD库生成带阴影文字的图片
Mar 27 #PHP
You might like
《破坏领主》销量已超100万 未来将继续开发新内容
2020/03/08 其他游戏
程序员编程十条戒律
2009/07/09 PHP
浅析php中jsonp的跨域实例
2013/06/21 PHP
Thinkphp页面跳转设置跳转等待时间的操作
2019/10/16 PHP
jquery创建div 实现代码
2009/04/27 Javascript
JS+CSS实现仿雅虎另类滑动门切换效果
2015/10/13 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
2016/02/21 Javascript
JS中正则表达式只有3种匹配模式(没有单行模式)详解
2016/07/28 Javascript
D3.js中强制异步文件读取同步的几种方法
2017/02/06 Javascript
原生js实现旋转木马轮播图效果
2017/02/27 Javascript
pace.js和NProgress.js两个加载进度插件的一点小总结
2018/01/31 Javascript
解决vue中无法动态修改jqgrid组件 url地址的问题
2018/03/01 Javascript
微信小程序生成分享海报方法(附带二维码生成)
2019/03/29 Javascript
jquery实现下载图片功能
2019/07/18 jQuery
[01:03:33]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
python解决字典中的值是列表问题的方法
2013/03/04 Python
Python深入学习之装饰器
2014/08/31 Python
python MySQLdb Windows下安装教程及问题解决方法
2015/05/09 Python
python类装饰器用法实例
2015/06/04 Python
Python实现并行抓取整站40万条房价数据(可更换抓取城市)
2016/12/14 Python
使用Python对MySQL数据操作
2017/04/06 Python
利用django-suit模板添加自定义的菜单、页面及设置访问权限
2018/07/13 Python
python pandas 时间日期的处理实现
2019/07/30 Python
Python3.7实现验证码登录方式代码实例
2020/02/14 Python
Python生成器常见问题及解决方案
2020/03/21 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
CSS3基础(RGBa、text-shadow、box-shadow、border-radius)
2012/11/13 HTML / CSS
浅析CSS3中鲜为人知的属性:-webkit-tap-highlight-color
2017/01/12 HTML / CSS
10分钟理解CSS3 FlexBox弹性布局
2018/12/20 HTML / CSS
德国隐形眼镜店:LuckyLens
2018/07/29 全球购物
小学科学教学反思
2014/01/26 职场文书
竞选学委演讲稿
2014/09/13 职场文书
党风廉政建设个人总结
2015/03/06 职场文书
2015年教师师德师风承诺书
2015/04/28 职场文书
幼儿体育课教学反思
2016/02/16 职场文书
正确的理解和使用Django信号(Signals)
2021/04/14 Python