日期:2014-05-17  浏览次数:20478 次

tp框架写了个方法获取顶级分类return结果就是null,在辅助函数都能打印出结果。
PHP code
     //通过id_category获取一级分类id
     function getParentInfo(){
         $id_category=Tools::getValue('id_category');
         $cate_info=$this->category_obj->where('id_category='.$id_category)->find();
         //不是顶级
         if($cate_info['pid']!=0){
             $result=$this->getFirst($id_category);
         }else{
             $result=$cate_info;
         }
         dump($result);
     //    dump('顶级类是:'.$result['id_category'].':'.$result['name'].'<br/>');
     }    
    function getFirst($id_category){     
          $cate_info=$this->category_obj->where('id_category='.$id_category)->find();   
          echo $this->category_obj->getLastSql().'<br/>';  
          if($cate_info['pid']!=0){
               $this->getFirst($cate_info['pid']);               
          }else{
               dump($cate_info);
               return $cate_info;
          }          
     }


我拿分类id=115测试结果是在下面getFirst能打印出结果也是想要的结果,但是:return $cate_info给$result时候就是NULL了
求高手指点!!!

------解决方案--------------------
function getFirst($id_category){
$cate_info=$this->category_obj->where('id_category='.$id_category)->find();
echo $this->category_obj->getLastSql().'<br/>';
if($cate_info['pid']!=0){
$this->getFirst($cate_info['pid']);//这里没有接住返回的数据
}else{
dump($cate_info);
return $cate_info;
}
}

------解决方案--------------------
PHP code


function getFirst($id_category){   
  $cate_info=$this->category_obj->where('id_category='.$id_category)->find();   
       echo $this->category_obj->getLastSql().'<br/>';   
  if($cate_info['pid']!=0){
       $cate_info =$this->getFirst($cate_info['pid']);   
  }
      return $cate_info;
    }

------解决方案--------------------
要有返回值!