0

可能重复:
PHP 可选参数 - 按名称指定参数值?

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

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

foo($param1, $param3); 

代替:

foo($param1, null, $param3); 
4

2 回答 2

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)); 

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

于 2012-07-16T09:08:18.293 回答
-2

不,param3 将被视为 param2。

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

$myhash = array('param1'=>'someval','param3'=>'someval');
foo($myhash);
于 2012-07-16T09:02:28.080 回答