PHP関数がnullまたは何も返さないかどうかを確認します
-
05-07-2019 - |
質問
このコードを持っています
$return = $ep->$method($params);
if ($return === null) {
throw new Exception('Endpoint has no return value');
}
return $return;
null
を返すメソッドと何も返さないメソッドを区別する方法はありますか?
解決
それは不可能です。戻り値が設定されていない場合、関数は自動的にnullを返します。
他のヒント
関数が何も返さない場合は、戻り値をテストしないでください。どの関数が何かを返すか、何も返さないと予想されることを知っておく必要があります-あなたがそれらを書いたのではない場合でも。
関数が別の値を返すようにすることはできますか?ブール値の可能性があり、それまたはnullを確認します。
PHP7’の戻り値型宣言機能を使用:
function a(): void {
return null; // :(
}
function b(): void {
// :)
}
function c(): void {
return; // :)
}
所属していません StackOverflow