相关疑难解决方法(0)

在函数中使用默认参数

我对PHP函数的默认值感到困惑.说我有这样的功能:

function foo($blah, $x = "some value", $y = "some other value") {
    // code here!
}
Run Code Online (Sandbox Code Playgroud)

如果我想使用$ x的默认参数并为$ y设置不同的参数,该怎么办?

我一直在尝试不同的方式,我只是变得更加困惑.例如,我尝试了这两个:

foo("blah", null, "test");
foo("blah", "", "test");
Run Code Online (Sandbox Code Playgroud)

但是这两个都不会导致$ x的正确默认参数.我也尝试用变量名设置它.

foo("blah", $x, $y = "test");   
Run Code Online (Sandbox Code Playgroud)

我完全期望这样的事情能发挥作用.但它根本无法实现.似乎无论我做什么,每次调用函数时,我都必须最终输入默认参数.而且我必须遗漏一些明显的东西.

php arguments default

166
推荐指数
6
解决办法
14万
查看次数

php默认参数

在PHP中,如果我有一个这样的函数

function example($argument1, $argument2="", $argument3="")
Run Code Online (Sandbox Code Playgroud)

我可以在其他地方调用此函数

example($argument1)
Run Code Online (Sandbox Code Playgroud)

但是,如果我想给thrid参数赋予一些价值,我应该这样做

example($argument1, "", "test");
Run Code Online (Sandbox Code Playgroud)

要么

 example($argument1, NULL, "test");
Run Code Online (Sandbox Code Playgroud)

我认为两者都会奏效,但更好的方法是什么?因为将来如果在main函数中更改$ argument2的值并且如果我有"",那么会有任何问题吗?或NULL是最好的选择?

谢谢

php arguments

19
推荐指数
2
解决办法
2万
查看次数

标签 统计

arguments ×2

php ×2

default ×1