中括弧のない PHP 制御構造
PHP では、通常、中括弧は if/else などの制御構造の本体を定義するために使用されます。 、while、for、foreach。ただし、エラーを発生させずに中括弧を省略できる特定のシナリオがあります。
If/Else
if/else ステートメントでは、次の場合に中括弧を省略できます。各本文内のステートメントは 1 つだけです。例:
<code class="php">if ($x == 1) echo 'foo'; else echo 'bar';</code>
これは次と同等です:
<code class="php">if ($x == 1) { echo 'foo'; } else { echo 'bar'; }</code>
For および foreach
for および foreach ループでは、中括弧を使用できます。本文内にステートメントが 1 つしかない場合も省略されます。ただし、これらのループは、指定された条件が false になるまで実行され続けることに注意することが重要です。例:
<code class="php">$arr = []; foreach ($var as $value) $arr[] = $value;</code>
これは、$var 内のすべての要素を反復処理し、それらを $arr に追加します。ただし、foreach ループ内の if ステートメントの後のセミコロンを省略すると、解析エラーが発生します。
<code class="php">foreach ($var as $value) if (1 + 1 == 2) $arr[] = $value;</code>
これは、foreach ループが if ステートメントの後にセミコロンを期待しているためです。
while
while ループで中括弧を省略すると、for および foreach ループと同じ効果が生じます。ループは、指定された条件が false になるまで実行され続けます。例:
<code class="php">while ($x > 0) $x--;</code>
$x が 0 になるまで 1 ずつ減分されます。
注意事項
curly を省略することは技術的に可能ですが、特定の制御構造で中括弧を使用することは、次の理由により通常推奨されません:
したがって、明確さと保守性を確保するために、制御構造では常に中括弧を使用することがベスト プラクティスです。
以上がPHP 制御構造で中括弧を省略できるのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。