2015-07-12 182 views
0

我是php的新手,並且無法確定如何確保我的函數返回所有值,在下面的函數中我想確保當我調用函數時它返回所有我的三個$參數,由於某種原因它只返回我的$ parameter1。返回函數中的所有值,PHP

public static function data($parameter){ 
    foreach($newlist as $value){ 
     if($value[0]=='age'){ 
      $parameter1 =new Age($value[1],$value[2]); 
      return $parameter1; 
     } 
     if($value[0]== 'name'){ 
     $parameter2 =new Name($value[1],$value[2]); 
     return $parameter2; 
     } 
     if($value[0]== 'id'){ 
     $parameter3 =new Id($value[1],$value[2],$value[3]); 
     return $parameter3; 
     } 
     return array($parameter1,$parameter2,parameter3); //Here i want to make sure that when i call my function data, it returns an array of all my three parameters. 
    } 
    } 
+1

然後只刪除前3個返回語句? – Rizier123

+3

$ newlist是如何設置的? – user2182349

回答

1

return將立即停止功能和返回值。這意味着當達到return $parameter1;時,函數結束並返回。

可以擺脫單一return語句和移動環路以外的陣列回報(請注意,你可能要檢查的參數實際已找到):

public static function data($parameter){ 
    foreach($newlist as $value){ 
     if($value[0]=='age'){ 
      $parameter1 =new Age($value[1],$value[2]); 
     } 
     if($value[0]== 'name'){ 
     $parameter2 =new Name($value[1],$value[2]); 
     } 
     if($value[0]== 'id'){ 
     $parameter3 =new Id($value[1],$value[2],$value[3]); 
     } 
    } 
    return array($parameter1,$parameter2,parameter3); 
    } 

這是這是PHP的一個基本部分,我建議花一些時間玩上面的變體,這樣您就可以瞭解return關鍵字的工作原理。