27

Github のコードの一部に表示されます

if($something_funky_happens){
  throw new \LogicException(...);
  return;
}

これは必須ですか、それとも戻ることは重要ではありませんか? 例外をスローした後、スクリプトが停止することがわかっているため、それ以上のコードは実行されません

4

4 に答える 4

35

到達不能なコード

私はそれを彼らのコードのエラーとして示す傾向があります。ステートメントに到達できません。すべての静的コード分析ツールは、この到達不能ステートメントについて文句を言います。この場合、害がない場合でも、コードをチェックするときに大量の警告が表示されます。これらの警告タイプをオフにすると、コード内の他の論理エラーを見逃す可能性があります。それは本当に悪臭であり、修正する必要があります。

于 2012-07-18T18:34:43.533 に答える
5

彼らが間違いを犯したか、それが彼らの個人的な好みだからです。そのコードでに到達することは不可能returnですが、それを含めても実際の害はありません。

ドキュメント から(強調鉱山)

例外がスローされると、ステートメントに続くコードは実行されず、PHP は最初に一致する catch ブロックを見つけようとします。

于 2012-07-18T18:13:19.490 に答える
4

読みやすくするためだけだと思います....すべての出口点が新しい行で区切られているふりをすれば、出口点のコードをより速くスキャンできます。

于 2012-07-18T18:21:32.823 に答える