使用递归函数后,数组元素增加了,怎么回事

函数如下:

function getcates($old_cates,$idname,$fidname,$fid=0)
{//参数 数组,id的字段名,fid的字段名,fid的字段值(缺省0)
  static $new_cates=array();      
  foreach($old_cates as $vo)
  {     
    if($vo[$fidname]==$fid)
    {        
      $new_cates[]=$vo;         
      getcates($old_cates,$idname,$fidname,$vo[$idname]);   
    }               
  }
  return $new_cates;
}
$news_order= getcates($news,'CHANNEL_ID','PARENT_ID');

原来$news 数组元素数量为2718 使用这个函数后 $news_order数量变为了5435,我想知道怎么回事,有大神能帮忙解答一下吗??

图片说明

你代码中根本都没有出现$news ,你让人怎么说。