コードをスクロールしていると、次のようなものに遭遇するかもしれません if (1 === $var)。
if ($var === 1) と if (1 === $var) の違いは何でしょうか?
2 つのアプローチの間に機能上の違いがないことを知っておく必要があります。では、一体なぜ条件を記述するときにヨーダ条件を使用するのでしょうか?
if ステートメントを作成するときに、等号を見逃した可能性があります。問題は、次のような結果になった場合です:
if ($var = 1) { // Instead of $var === 1 // Do something }
ここで何が起こるのでしょうか?
このコードは有効であるため、エラーは検出されません。問題は、これが意図したとおりに動作しないことです。変数は値 1 に代入され、比較は実行されず、常に true になります。
ここでヨーダ条件が役立ちます。同じ場合、次のようになります:
if (1 = $var) { // Instead of 1 === $var // Do something }
ここでもいくつかの等号が欠落していますが、コードは無効です。今回は、これが無効であるためエラーが発生します。
Yoda 条件の唯一の目的は、可読性の低下を伴う偶発的な代入を避けることであることがわかりました。
それを使用する必要がありますか?なぜだめですか !ただし、これによってコードが大幅に改善されるわけではないことに注意してください。
また、開発者とのパーティーで臨機応変に対応することも役立ちます (ちなみに、これはそれほど頻繁に行われるわけではありません)。
読んでいただき、ありがとうございます! ?
以上がPHP におけるヨーダ条件とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。