首頁 >後端開發 >php教程 >php如何實現無限極分類? (附代碼)

php如何實現無限極分類? (附代碼)

不言
不言原創
2018-08-13 15:09:142289瀏覽

這篇文章帶給大家的內容是關於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如何實現無限極分類? (附代碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn