我的功能如下:
private static function myfun(
string $param1,
:xhp $param2,
): :xhp {
return
//somethinf
}
我不想将任何内容传递给 param2 。我怎样才能做到这一点 ? 当我尝试这样做时:
myfun("Hi",null),
它显示了我的错误。
答案 0 :(得分:2)
为了能够传递null
,您的类型提示必须允许它。在Hack中,这是通过使用nullable type来完成的。
private static function myfun(
string $param1,
?:xhp $param2,
): :xhp {
return
//somethinf
}
然后,Hack类型检查器还会确保在使用之前检查$param2
是否为空。
答案 1 :(得分:0)
这是诀窍吗?
private static function myfun(
string $param1,
:xhp $param2=null,
): :xhp {
return
//somethinf
}