thinkphp 简单的无限分类实现
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp 简单的无限分类实现相关的知识,希望对你有一定的参考价值。
function getSonLists($upid=0,$space=‘‘){
$icon = array(
‘ │‘,
‘ ├─‘,
‘ └─‘
); //格式化的字符
$category_type = $this->category_type;
$map[‘up_id‘] = array(‘eq‘,$upid);
// $map[‘id‘] = array(‘neq‘,1);
$lists = M(‘Category‘)->where($map)->field(‘id,catname,up_id,status,sort,model_id,path,type‘)->order(‘sort asc,id asc‘)->select();
$n = count($lists);
$cat_all = array();
if($n){
$m=1;
for($i=0;$i<$n;$i++){
if($n==$m){//只有一个子栏目/最后一个栏目
$pre = $icon[2];
}else{
$pre = $icon[1];
}
$pad = $space ? $icon[0] : "";
$lists[$i][‘name‘]=($space ? $space.$pre : "").$lists[$i][‘catname‘];
$cat_all[]=$lists[$i];
$cat_bbb=$this->getSonLists($lists[$i][‘id‘], $space.$pad." "); //递归下一级分类
if(count($cat_bbb)){//包含子栏目 合并
$cat_all=array_merge($cat_all,$cat_bbb);
}
$m++;
}
}
return $cat_all;
}
以上是关于thinkphp 简单的无限分类实现的主要内容,如果未能解决你的问题,请参考以下文章
php+mysql三级分类,李文凯thinkphp无限级分类