PHP 5 类型提示
PHP 5 引入了类型提示。函数现在能够强制参数为对象(通过在函数原型中指定类的名称)或arrays
(自 PHP 5.1 起)。但是,如果NULL
将其用作默认参数值,则将允许将其作为任何以后调用的参数。
以下摘自上述内容:
如果NULL
用作默认参数值,则将允许它作为任何以后调用的参数。
上面的意思是不是:
如果要与类型提示一起使用默认参数,则它只能具有NULL
默认值。
即code1中的代码是错误的,导致:
致命错误:具有类类型提示的参数的默认值只能是NULL
代码1:
function setName ( string $name = "happ") {
...
}
code2 中的代码是正确的:
代码2:
function setName ( string $name = NULL) {
...
}
为什么在 php 中分配这个约束?