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;
}
原文地址:http://blog.51cto.com/9300893/2088607