PHP递归获取多层栏目

 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     }

 

转载于:https://www.cnblogs.com/acoll/p/7041228.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值