PHP递归获取多层栏目

Posted 流浪在阿尔卑斯的野狼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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     }

 

以上是关于PHP递归获取多层栏目的主要内容,如果未能解决你的问题,请参考以下文章

PHP中无限极分类函数的实现

java Ftp上传创建多层文件的代码片段

php之利用递归写无限极分类

php+mysql怎么获取网站的所有栏目树状结构?

帝国cms如何获取根栏目或父栏目下所有文章内容

c# .net获取文件夹下的所有文件(多层递归),并获取区间数据(Jsion,xml等数据)写出到处理文件,学习分享~