創建類別表如下:
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;
}
?>