首页 > Web开发 > 详细

PHP递归获取多层栏目

时间:2017-06-17 21:22:44      阅读:225      评论:0      收藏:0      [点我收藏+]
 1     /**
 2      * 返回多层栏目
 3      * @param $data 操作的数组
 4      * @param int $pid 一级PID的值
 5      * @param string $html 栏目名称前缀
 6      * @param string $fieldPri 唯一键名,如果是表则是表的主键
 7      * @param string $fieldPid 父ID键名
 8      * @param int $level 不需要传参数(执行时调用)
 9      * @return array
10      */
11     public function channelLevel($data, $pid = 0, $html = " ", $fieldPri = ‘cid‘, $fieldPid = ‘pid‘, $level = 1)
12     {
13         if (empty($data)) {
14             return array();
15         }
16         $arr = array();
17         foreach ($data as $v) {
18             if ($v[$fieldPid] == $pid) {
19                 $arr[$v[$fieldPri]] = $v;
20                 $arr[$v[$fieldPri]][‘level‘] = $level;
21                 $arr[$v[$fieldPri]][‘html‘] = str_repeat($html, $level - 1);
22                 $arr[$v[$fieldPri]]["data"] = $this->channelLevel($data, $v[$fieldPri], $html, $fieldPri, $fieldPid, $level + 1);
23             }
24         }
25         return $arr;
26     }

 

PHP递归获取多层栏目

原文:http://www.cnblogs.com/acoll/p/7041228.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!