快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

php下利用递归实现无限级分类



1,'province'=>'福建省','parent_id'=>0),
array('cat_id'=>2,'province'=>'龙岩市','parent_id'=>1),
array('cat_id'=>3,'province'=>'广东省','parent_id'=>0),
array('cat_id'=>4,'province'=>'佛山市','parent_id'=>3),
array('cat_id'=>5,'province'=>'江西省','parent_id'=>0),
array('cat_id'=>6,'province'=>'南昌市','parent_id'=>5),
array('cat_id'=>7,'province'=>'赣州市','parent_id'=>5),
array('cat_id'=>8,'province'=>'宁都县','parent_id'=>7),
);
/*
参数说明:
$area:array 一个数组,存放了分类的栏目
$parent_id:int 用作查询的条件
$lev:int 实现子栏目的缩进
*/
function sortarea($area,$parent_id = 0,$lev = 1){
//声明一个变量为static,这个变量是一个数组
static $list;
foreach($area as $v){
//如果父id=0,则取出顶层栏目,之后通过递归传递过来cat_id,判断parent_id是否等于cat_id
if($v['parent_id'] == $parent_id){
//把$lev变量放进$v的数组中去
$v['lev'] = $lev;
$list[] = $v;
sortarea($area,$v['cat_id'],$lev+1);
}
}
return $list;
}
$list = sortarea($area,0,1);
foreach($list as $v){
//用str_repeat函数实现子栏目缩进
echo str_repeat('   ',$v['lev']),$v['province'],'';
}
?>

本文名称:php下利用递归实现无限级分类
URL地址:http://6mz.cn/article/pshedg.html

其他资讯