PHP 7.1中的隐式void返回?

时间:2016-11-14 00:57:37

标签: php standards php-internals php-7.1

我在这里找到了新的规范:https://wiki.php.net/rfc/void_return_type

function lacks_return(): void {
    // valid
}
function returns_nothing(): void {
    return; // valid
}
function returns_void(): void {
    return void; // valid
}
问:你知道幕后发生了什么吗? lacks_return函数实际上会返回void吗?

1 个答案:

答案 0 :(得分:4)

你可以很容易地自己测试一下:

function lacks_return(): void {
}

function returns_nothing(): void {
    return;
}

echo gettype(lacks_return()); // NULL
echo gettype(returns_nothing()); // NULL

所以答案是肯定的 - 有一个隐式的空(null)返回,所以你可以使用空返回或完全跳过它。哪种有意义 - 什么都不返回就像没有返回什么一样?