1.创建数据表
create table shop_category(
cateid int unsigned not null auto_increment primary key,
title varchar(32) not null default '',
parentid int unsigned not null default 0
)ENGINE=InnoDB default charset=utf8;
插入数据后,内容如下图所示:
2.程序举例
<?php
header("Content-type:text/html;charset=utf-8");
function getList($arr, $pid=0, $leve1){
static $list=array(); //数组list存放同属于同一个顶级分类的子类
foreach ($arr as $value) {
if ($value['parentid']==$pid) { //此记录属于顶级分类
$value['leve1']=$leve1; //设置顶级分类的level字段
$list[]=$value; //将此记录存入数组list中
getList($arr, $value['cateid'], $leve1+1); //递归遍历下一级的子目录,此时参数 $pid 的值为上一次查询到的记录的 cate_id
}
}
return $list; //返回值是:同属于同一个顶级分类的所有子类
}
?>