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;
	}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值