這篇文章帶給大家的內容是關於php如何實現無限極分類? (附代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
在寫項目的時候用到了無限極分類,因為項目的特殊原因,選單列需要多次呼叫該方法,用靜態變數保存數組的時候就會出現問題,所以選擇了引用的方法
public function getTree($array, $pid = 0, $level = 0, &$list) { foreach ($array as $key => $value) { //第一次遍历,找到父节点为根节点的节点 也就是pid=0的节点 if ($value['parentid'] == $pid) { //父节点为根节点的节点,级别为0,也就是第一级 $value['level'] = $level; //把数组放到list中 $list[] = $value; //把这个节点从数组中移除,减少后续递归消耗 unset($array[$key]); //开始递归,查找父ID为该节点ID的节点,级别则为原级别+1 $this->getTree($array, $value['id'], $level + 1, $list); } } return $list; }
相關推薦:
用php怎麼取得檔案的大小來判斷? (程式碼範例)以上是php如何實現無限極分類? (附代碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!