where($map)->limit($limit)->select(); return $this->catesTree($data); } public function getCount($map){ $data=$this->where($map)->count(); return $data; } public function catesTree($data,$parentid=0,$level=0,$nbsp = '--'){ static $tree=array(); foreach ($data as $k=>$v){ if($v['pid']==$parentid){ $v['level']=$level; $v['nbsp'] = str_repeat( $nbsp, $level ); $tree[]=$v; unset($data[$k]); $this->catesTree($data,$v['id'],$level+1); } } return $tree; } }