allowsNull 方法查看参数是否有类型。
如果定义了类型,则仅当默认值为 null 时才允许 null。
<?php
function myfunction ( $param ) {
}
echo (new ReflectionFunction("myfunction"))->getParameters()[0]->allowsNull() ? "true":"false";
?>
结果:true
<?php
function myfunction ( stdClass $param ) {
}
echo (new ReflectionFunction("myfunction"))->getParameters()[0]->allowsNull() ? "true":"false";
?>
结果:false
<?php
function myfunction ( stdClass $param = null ) {
}
echo (new ReflectionFunction("myfunction"))->getParameters()[0]->allowsNull() ? "true":"false";
?>
结果:true