PHP 7引入了返回类型声明。这意味着我现在可以指示返回值是某个类,接口,数组,可调用或新暗示的标量类型之一,对于函数参数而言,这是可能的。
function returnHello(): string {
return 'hello';
}
通常,值并不总是存在,并且您可能返回某种类型的值或null。虽然您可以通过将参数的默认值设置为null(DateTime $time = null
)来使参数为可空状态,但是似乎没有办法对返回类型执行此操作。确实是这种情况,还是我不知如何找到方法呢?这些不起作用:
function returnHello(): string? {
return 'hello';
}
function returnHello(): string|null {
return 'hello';
}
我现在已经通过滥用应用程序中的异常来模拟可空性。如果你是罚款傻为好,这可能是有用的:github.com/JeroenDeDauw/OhMyPhp/blob/master/src/...
—
吉荣德Dauw
也许它可能会更有意义,使用PHP7
—
埃利亚斯凡Ootegem
Trowable
接口(具体地说,扩展TypeError
)
function returnString(?string $stringNull) : ?string { return $stringNull;}