首先我们在模型中的代码:
<?php namespace app\admin\model; use think\Model; class Cate extends Model{ //输出数据库的所有内容 public function catetree(){ //调用sort方法 $cateres = $this->select(); return $this->sort($cateres); } //创建方法 $data参数是数据库所有数据 $pid参数是数据库pid $le参数是为了区分显示级别的 public function sort($data,$pid=0,$level=0){ //创建一个静态数组保存数据 static $arr = array(); //循环出所有的有关数据保存进数组 foreach($data as $k=>$v){ //当第一循环是pid==0 因为上面已经设置pid==0 if($v['pid']==$pid){ //这里是为了区分级别 $v['le']=$le; //将有关数据保存如数据 $array[]=$v; //为了将有关数据保存数据,这里使用递归 self::method($data,$v['id'],$le+1); } } //将最后的内容输出返回 return $array; } }
然后是我们在控制器中的方法: