PHP 遞歸遍歷實現無限分類

創建類別表如下:

CREATE TABLE category(
cat_id smallint unsigned not null auto_increment primary key comment'類別ID',
cat_name VARCHAR(30)NOT NULL DEFAULT''COMMENT'類別名稱',
parent_id SMALLINT UNSIGNED NOT NULL DEFAULT 0 COMMENT'類別父ID'
)engine=MyISAM charset=utf8;

編寫一個函數,遞歸遍歷,實現無限分類

<?php
    function tree($arr,$pid=0,$level=0){
        static $list = array();
        foreach ($arr as $v) {
            //如果是頂級分類,則將其存到$list中,並以此節點爲根節點,遍歷其子節點
            if ($v['parent_id'] == $pid) {
                $v['level'] = $level;
                $list[] = $v;
                tree($arr,$v['cat_id'],$level+1);
            }
        }
        return $list;
    }
?>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章