PHP5函数参数的顺序

时间:2012-07-16 09:00:53

标签: php function parameters

  

可能重复:
  PHP Optional Parameters - specify parameter value by name?

我可以在PHP5中调用第一个和第三个参数的函数吗?
还有另一种指定params顺序的方法吗?

function foo($param1=null, $param2=null, $param3=null) {}

foo($param1, $param3); 

而不是:

foo($param1, null, $param3); 

2 个答案:

答案 0 :(得分:0)

不是直接的,但你可以这样写:

function foo($args)
{
    print "param1 : " . $args["param1"] . "\n";
    print "param2 : " . $args["param2"] . "\n";
    print "param3 : " . $args["param3"] . "\n";
}

foo(array("param1" => $param1, "param3" => $param3)); 

相反,如果你想允许这样的可选用法。

答案 1 :(得分:-2)

不,param3将被视为param2。

您可以传递哈希,如下所示:

$myhash = array('param1'=>'someval','param3'=>'someval');
foo($myhash);