zoukankan      html  css  js  c++  java
  • 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     }
  • 相关阅读:
    蜂窝网格的坐标以及寻路
    unity3d 第三人称视角的人物移动以及相机控制
    基本HTML结构
    平衡二叉树
    STL基础复习
    递归
    unity 傅老师学习
    blender基础操作
    最小生成树
    最短路径
  • 原文地址:https://www.cnblogs.com/acoll/p/7041228.html
Copyright © 2011-2022 走看看