PHP 7 presenta declaraciones de tipo de retorno . Lo que significa que ahora puedo indicar que el valor de retorno es una determinada clase, interfaz, matriz, invocable o uno de los tipos escalares recién imprimibles, como es posible para los parámetros de función.
function returnHello(): string {
return 'hello';
}
A menudo sucede que un valor no siempre está presente y que puede devolver algo de algún tipo o nulo. Si bien puede hacer que los parámetros sean anulables estableciendo su valor predeterminado en nulo ( DateTime $time = null
), no parece haber una forma de hacerlo para los tipos de retorno. ¿Es ese el caso, o de alguna manera no encuentro cómo hacerlo? Estos no funcionan:
function returnHello(): string? {
return 'hello';
}
function returnHello(): string|null {
return 'hello';
}
Trowable
interfaz PHP7 (específicamente, extender la TypeError
)
function returnString(?string $stringNull) : ?string { return $stringNull;}