private function finance_convert($data) { foreach($data as $k=>$v){ if(is_array($v)){ $this->finance_convert($v); } if(strpos($k,self::FINANCE_TARGET)){ $arr = explode('-',$k); $newArray[$arr[2]][$arr[1]] = ''; $newArray[$arr[2]][$arr[1]] = $v; } } return $newArray; }
参数$data中一维和二维都有可能有所需要的数据,但是由于return,会执行的最底层的return直接就返回了,这个时候最好使用static静态变量,不用return语句