首先資料表類似於這樣,然後進行資料查詢取得所有的資料
$sql ="select * from ec_admin_role where ar_state=1 order by ar_level"; $roles = $g_db->getAll($sql); $g_db->close(); $list=roletree($roles,0);//调用函数按父级id进行排序 foreach($list as $k=>$v) { $list[$k]['ar_name'] = str_repeat('----',$v['ar_level']).$v['ar_name'].'<br>'; } //将角色经排序 function roletree($arr,$id=0) { $subs = array(); // 子孙数组 foreach($arr as $v) { if($v['ar_parent_id'] == $id) { $subs[] = $v; $subs = array_merge($subs,roletree($arr,$v['ar_id'])); } } return $subs; }
然後在靜態頁面中循環輸出,效果如下:
顯示效果誰加入下級,那個下級就緊鄰誰
#
以上是無限極分類且排序的方法介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!