二级分类的数据表结构如下
复制代码代码如下: PHP代码如下/** @ 文章分类含二级分类@ param int $rootnum -一级分类数量@ param int $childnum -二级分类数量@返回值array @ date 2011。2 .24 */function temp _ article treate($ rootnum,$childnum){ if(!is num($ rootnum)){ $ rootnum=10;} if(!is num($ child num)){ $ child num=10;} $ category=array();$parent_sql='SELECT cateid,catename FROM ' .表前缀文章类别.其中parentid=0,深度=0,标志=1 ORDER BY orders ASC ';if(int val($ rootnum)0){ $ parent _ SQL .=' LIMIT $ rootnum } $ parent _ cate=$ GLOBALS[' db ']-get all($ parent _ SQL);foreach($ parent _ cate as $ parent _ key=$ parent _ value){//子类数组名为儿童类别根据情况自定义名称$ category[]=array(' cateid '=$ parent _ value[' cateid '],' catename '=$ parent _ value[' catename '],'子类别'=array());//读取子类$child_sql='SELECT cateid,catename FROM ' .表前缀articlecate WHERE parentid=' .$parent_value['cateid']."与"标志=1"按订单排序";if(int val($ child num)0){ $ child _ SQL .=' LIMIT $ child num } $ child _ cate=$ GLOBALS[' db ']-get all($ child _ SQL);foreach($ child _ cate as $ child _ key=$ child _ value){ $ category[count($ category)-1][' child category '][]=array(' cateid '=$ child _ value[' cateid '],' catename '=$ child _ value[' catename ']);} }返回$ category} PHP页面调用分类,如index.php $ goodscattree=array();$ goodscattree=temp _ goodstreate(4,0);//调用分类函数(含二级分类)4 - 表示一级分类只显示四个,0 - 表示二级分类不限数量$ t classign(' goodscattree ',$ goodscattree);//执行自作聪明的人引擎$ TPL-显示-(索引。第三方物流);//输出自作聪明的人模版页面电信程序设计语言(电信编程语言的缩写)模版页面输出分类,如index.tpl页面{节名=p循环=$ goodscatetree }一级分类:{ $ goodscattree[p].catename } { section name=c循环=$ goodscattree[p].childcategory}二级分类:{ $ goodscattree[p].儿童类别[c].catename} {/section} {/section}