author:咔咔
wechat:fangkangfk
這個用法只限於在一級和二級導航在一塊的狀況,若是是分開的,就去看另外一篇無極限分類 php
// 遞歸:菜單分類顯示 public function levelList($table ='mvc_category', $id = 0,$data_list = [],$level=0){ // 查詢出來全部的一級 $data = Db::table($table)->where([ 'fid'=>$id ])->select(); // 組裝數據 foreach($data as $k => $v){ $data_list[$v['id']]['name'] = str_repeat(' ',$level).'|-'.$v['name']; $data_list[$v['id']]['id'] = $v['id']; $data_list[$v['id']]['fid'] = $v['fid']; if(isset($v['type'])){ $data_list[$v['id']]['type'] = $v['type']; } if(isset($v['module'])){ $data_list[$v['id']]['module'] = $v['module']; } $data_list[$v['id']]['level'] = $level; $data_list = $this->levelList($table,$v['id'],$data_list,$level+1); } return $data_list; }