11月 6, 2016 - php开发, 循环遍历    无限极循环-简单2层栏目的遍历已关闭评论

无限极循环-简单2层栏目的遍历

  先看一下效果图:

有无限极循环关键就是增加一个父级字段,我起名叫parent_id.我的栏目表是这样设计的:

  首先把表的数据查出来赋给$data;要求是数据的形式;
上代码:

  如下是图片的代码: 

public function getTree($parent_id=0,$lv=0){  //给一个初值是零$lv是为了让3层目录有层次感显示出来. 

     $tree = array();   //定义一个空数组,存循环的数据 

     foreach($data as $v){ 

         if($v[‘parent_id’] == $parent_id){     //先把第一层($parent_id=零)找出来 

             $v[‘lv’] = $lv;         //将空格的数当做的一个$v的键 

             $tree[] = $v;          //将数据存到$tree 

             $tree = array_merge($tree,$this->getTree($v[‘cat_id’],$lv+1));//将 cat_id = 1再作为$parent_id,将空格$lv+1,继续循环调用.将循环后的结果(数组的形式,合并起来) 

     } 

 } 

     return $tree;  //返回循环后的结果
}
打印一下$tree

}

然后在模板上遍历:此处是在tp的模板上遍历的

 

. …………………………………………………………………………………………………………….. 

如果想达到这样的效果(只是显示出来2层): 

 

在前台中则需要改一下遍历输出的方式:

2层就搞定了,如果想要显示3层,可就不是这样了.具体方法,参考博文:3层遍历.

评论被关闭。