上代码:
class CategoryModel extends Model{ //获取所有的商品分类 public function getCats(){ $sql = "SELECT * FROM {$this->table}"; $cats = $this->db->getAll($sql); return $this->tree($cats); } /** * 重新排序 * @param array $arr 要排序的数组 * @param integer $pid 从哪里开始,默认是0,顶级开始 * @param integer $level 表示层级,默认是0,顶级 * @return array 排好序的数组 */ public function tree($arr,$pid = 0,$level = 0){ static $res = array(); foreach ($arr as $v) { if ($v['parent_id'] == $pid) { //说明找到,保存起来 //首先,需要将level保存到当前分类中 $v['level'] = $level; $res[] = $v; //继续查找,递归,条件发生变化 $this->tree($arr,$v['cat_id'],$level+1); } } //返回结果 return $res; } }