ホームページ  >  記事  >  バックエンド開発  >  PHP でネストされた三項演算子を使用すると構文エラーが発生するのはなぜですか?

PHP でネストされた三項演算子を使用すると構文エラーが発生するのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-03 10:00:04751ブラウズ

Why am I Getting Syntax Errors When Using Nested Ternary Operators in PHP?

入れ子になった三項演算子を理解する

PHP では、入れ子になった三項演算子を使用するとコードが簡素化され、読みやすくなります。ただし、構文エラーが発生することは珍しいことではありません。

提供されたコードではネストされた三項演算子を使用しようとしていますが、2 番目の三項演算の周囲のかっこが欠落しているためにエラーが発生する可能性があります。修正された式は次のようになります:

<code class="php">isset($_POST['selectedTemplate'])
? $_POST['selectedTemplate']
: (isset($_GET['selectedTemplate']) ? $_GET['selectedTemplate'] : 0);</code>

また、保守性を向上させるために、適切な if/else ステートメントを使用することもできます:

<code class="php">$selectedTemplate = 0;
if (isset($_POST['selectedTemplate'])) {
    $selectedTemplate = $_POST['selectedTemplate'];
} elseif (isset($_GET['selectedTemplate'])) {
    $selectedTemplate = $_GET['selectedTemplate'];
}</code>

ただし、簡略化のため、$ を使用することをお勧めします。 _REQUEST[] 配列。$_POST[] 配列と $_GET[] 配列の両方を組み合わせます:

<code class="php">isset($_REQUEST['selectedTemplate'])
? $_REQUEST['selectedTemplate']
: 0;</code>

以上がPHP でネストされた三項演算子を使用すると構文エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。