我想让我的生活更轻松,避免将一些预设变量传递给PHP中的函数。
例如,这有效:
function test1($var2,$var3,$var1=1){
return '$var1='.$var1.'+$var2='.$var2.'+$var3'.$var3;
}
echo test1($var2=2,$var3=3);
#$var1=1+$var2=2+$var33
但这不是(没有警告):
function test($var1=1,$var2,$var3){
return '$var1='.$var1.'+$var2='.$var2.'+$var3'.$var3;
}
echo test($var2=2,$var3=3);
#Warning: Missing argument 3 for test(), called in /var/www/atpc.info/f/f/m/t.php on line 6 and defined in /var/www/atpc.info/f/f/m/t.php on line 3
#Notice: Undefined variable: var3 in /var/www/atpc.info/f/f/m/t.php on line 4
#$var1=2+$var2=3+$var3
也许使这种情况发生的唯一方法就是将预设变量放到行尾。是吗?
感谢任何光明。
答案 0 :(得分:2)
Oy ...... 不如何在PHP中传递变量....
发送变量:
function test($var1=1,$var2=1,$var3=1){ //default 1, 1, 1
return '$var1='.$var1.'+$var2='.$var2.'+$var3'.$var3;
}
echo test(2,3); //only sent for var1 and 2
echo test(null, 2, 3); //only sent for var2 and 3
echo test(); //default for all
答案 1 :(得分:1)
默认值需要在任何非默认值之后,如示例5 on the function arguments page at PHP.net所示。
答案 2 :(得分:0)
尝试检查variable function arguments in PHP
。
答案 3 :(得分:0)
你可能会让你的生活变得更轻松,但它可能会导致代码邋code,在某些时候你应该传递一个参数而你忘记但代码没有抛出任何错误。这是我的看法。