当前位置: 移动技术网 > IT编程>开发语言>PHP > php 无限极分类

php 无限极分类

2018年05月28日  | 移动技术网IT编程  | 我要评论

/*
 *@pram $array 数组
 *@pram $pid   子id
 *@pram $level  等级  0 最顶级 以此类推
 */
  function test($array,$pid=0,$level=0){
      //定义数组存放找到的数据,静态防止覆盖
         static $list=[];
         foreach ($array as $key => $value) {
             //判断,先找到顶级栏目
                 if($value['pid']==$pid){
               //找到顶级栏目后加标识,最顶级level=0
                     $value['level']=$level;
                     //找到所需栏目保存到事先定义好的list数组中
                     $list[]=$value;
                     //然后销毁当前已找到的数据的key,避免下次重复递归,消耗资源
                     nuset($array[$key]);

                     //开始递归,找完pid=0,找pid=1的,level+1。以此类推。
                     test($array,$value['id'],$level+1);
                 }
         }

         return $list;
  }

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网