【发布时间】:2017-10-15 23:34:57
【问题描述】:
我一直在尝试在 PHP 中更多地使用类型提示。今天我正在编写一个带有默认参数的布尔函数,我注意到表单的函数
function foo(boolean $bar = false) {
var_dump($bar);
}
实际上抛出了一个致命错误:
具有类类型提示的参数的默认值只能为 NULL
一个类似形式的函数
function foo(bool $bar = false) {
var_dump($bar);
}
没有。但是,两者都
var_dump((bool) $bar);
var_dump((boolean) $bar);
给出完全相同的输出
:boolean false
这是为什么?这是否类似于 Java 中的包装类?
【问题讨论】:
-
检查the manual的有效支持类型
-
使用
bool进行类型提示。
标签: php boolean default-value type-hinting