(也许这个问题之前已经被问过了,但我找不到了。)
如果在PHP中没有默认值的参数前面有一个默认值的参数,会发生什么?就像这样:
function myfunction($foo = 12, $bar) {
...
}
myfunction("hello")
会发生什么?答案 0 :(得分:1)
是的,它会输出警告,而不是错误,即:
Warning: Missing argument 2 in call to myfunction() in FILE on line LINENO
如果你致电myfunction("hello")
,$bar
未定义,那么它将是空字符串或NULL,$foo = "hello"
。它只会引发警告,所以你的脚本仍会执行。
为什么不切换参数的顺序?
编辑:这里有一个很好的解释为什么不能在PHP中重载独立函数: PHP function overloading