递归遍历无限极分类菜单
首先遍历的数组应该先无限极分类一下变成多维数组(无限极分类 多维数组形式:https://www.cnblogs.com/qiyunhai/p/13584997.html)
生成多维数组后执行递归遍历:
1 <?php 2 3 function tree($array, $pid = 0) 4 { 5 static $view = '<ul>'; 6 foreach($array as $key => $value) { 7 if($value['pid'] == $pid) { 8 $view .= '<li>'.$value['title'].'</li>'; 9 if(isset($value['son'])){ 10 $view .= '<ul>'; 11 tree($value['son'], $value['id']); // 递归 12 $view .= '</ul>'; 13 } 14 } 15 } 16 return $view; 17 }
然后只需要调用tree方法并把数组传过去即可。