質問

このコードを持っています

 $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; // :)
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top