码迷,mamicode.com
首页 > 其他好文 > 详细

一个无限级分类

时间:2014-05-26 14:01:51      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:style   c   class   blog   code   java   

bubuko.com,布布扣
 1 /**
 2  * 把返回的数据集转换成Tree
 3  * @param array $list 要转换的数据集
 4  * @param string $pid parent标记字段
 5  * @param string $level level标记字段
 6  * @return array
 7  */
 8 function list_to_tree($list, $pk=‘id‘, $pid = ‘pid‘, $child = ‘_child‘, $root = 0)
 9 {
10     // 创建Tree
11     $tree = array();
12     if(is_array($list)) {
13         // 创建基于主键的数组引用
14         $refer = array();
15         foreach ($list as $key => $data) {
16             $refer[$data[$pk]] =& $list[$key];
17         }
18         foreach ($list as $key => $data) {
19             // 判断是否存在parent
20             $parentId =  $data[$pid];
21             if ($root == $parentId) {
22                 $tree[] =& $list[$key];
23             }else{
24                 if (isset($refer[$parentId])) {
25                     $parent =& $refer[$parentId];
26                     $parent[$child][] =& $list[$key];
27                 }
28             }
29         }
30     }
31     return $tree;
32 }
bubuko.com,布布扣

很不错!性能应该很高

一个无限级分类,布布扣,bubuko.com

一个无限级分类

标签:style   c   class   blog   code   java   

原文地址:http://www.cnblogs.com/mk9007/p/3746523.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!