あなたはかなり簡単に自分でこれをテストしている可能性:
function lacks_return(): void {
}
function returns_nothing(): void {
return;
}
echo gettype(lacks_return()); // NULL
echo gettype(returns_nothing()); // NULL
をだから、答えはイエスです - あなたは空の戻りを使用するか、それを完全にスキップすることができいずれかのように、暗黙の空(ヌル)のリターンがあります。どのような意味がありますか - 何も返さないことは何も返さないことと同じですか?
/* `return ...;` is illegal in a void function (but `return;` isn't) */
if (return_info->type_hint == IS_VOID) {
if (expr) {
if (expr->op_type == IS_CONST && Z_TYPE(expr->u.constant) == IS_NULL) {
zend_error_noreturn(E_COMPILE_ERROR,
"A void function must not return a value "
"(did you mean \"return;\" instead of \"return null;\"?)");
} else {
zend_error_noreturn(E_COMPILE_ERROR, "A void function must not return a value");
}
}
/* we don't need run-time check */
return;
}
そうでない場合は、void
機能のコンパイルは通常のように動作します:彼らは、戻り値を指定した場合
は 'も暗黙の空白を返すこの機能は' - はい –
NULL http://ideone.com/AXErwsまたはhttps://3v4l.org/RJRoR –