您好,登錄后才能下訂單哦!
這篇文章主要介紹ThinkPHP菜單無極分類的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
效果圖如下
controller控制器代碼:
/** * 菜單列表 */ public function index(){ $menuList= Db::name('menu')->order('sort,id')->select(); //遞歸排序 $menuList= $this->sort($menuList); $this->assign('menuList',$menuList); return view(); } protected function sort($data,$pid=0,$level=0){ //此處數據必須是靜態數組,不然遞歸的時候每次都會聲明一個新的數組 static $arr = array(); foreach ($data as $key=>$value){ if($value['pid'] == $pid){ $value["level"]=$level; $arr[]=$value; //unset()用于銷毀指定的變量 unset($this->data[$key]); $this->sort($data,$value['id'],$level+1); } } return $arr; }
html模板代碼:
<tbody> {volist name="menuList" id="vo" key="index"} <tr> <td class="text-left"> <?php if($vo['pid']!=0) echo str_repeat(" ",$vo["level"]*3).'├? ' /*str_repeat()函數把字符串重復指定的次數。*/ ?> {$vo.name} </td> </tr> {/volist} </tbody>
以上是“ThinkPHP菜單無極分類的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。