为什么我不能这样做?
function ($var1, $var2 = $GLOBALS['var']){
...
}
全局'var'是一个对象
答案 0 :(得分:13)
您不能将变量用作默认值。 你可以用这个:
function ($var1, $var2 = null){
if(is_null($var2))
$var2=$GLOBALS['var'];
...
}
答案 1 :(得分:0)
函数的默认参数值必须是常量。
您可以将其设置为虚拟值,但需要null
,然后在函数的开头替换值。
function ($var1, $var2 = $GLOBALS['var']){
if(is_null($var2))
$var2=$GLOBALS['var'];
}