今天利用递归函数获取指定栏目的全部子栏目,需要递归调用,写的我自己感觉不应该有问题,但是数据重复出现太多次了
后来才发现范了一个二逼错误,递归调用后又赋值了,导致数据return出现太多
public function getids($id){ static $arr=array(); $ids=$this->where('cate_pid',$id)->field('cate_id')->select(); if(count($ids)!=0){ foreach($ids as $v){ $arr[]=$v['cate_id']; //原来我是这么写的,导致数据出现太多次,每次return回的数据都保存了 //$arr[]=$this->getids($v['cate_id']); $this->getids($v['cate_id']); } } return $arr; }