2015-07-12 102 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关键字的工作原理。