Heim >Backend-Entwicklung >PHP-Tutorial >Warum erhalte ich Syntaxfehler, wenn ich verschachtelte ternäre Operatoren in PHP verwende?

Warum erhalte ich Syntaxfehler, wenn ich verschachtelte ternäre Operatoren in PHP verwende?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-03 10:00:04829Durchsuche

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

Verschachtelte ternäre Operatoren verstehen

In PHP kann die Verwendung verschachtelter ternärer Operatoren den Code vereinfachen und seine Lesbarkeit verbessern. Syntaxfehler sind jedoch keine Seltenheit.

Der bereitgestellte Code versucht, verschachtelte ternäre Operatoren zu verwenden, ein Fehler ist jedoch wahrscheinlich auf die fehlenden Klammern um die zweite ternäre Operation zurückzuführen. Der korrigierte Ausdruck sollte wie folgt lauten:

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

Alternativ kann zur besseren Wartbarkeit eine richtige if/else-Anweisung verwendet werden:

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

Der Einfachheit halber wird jedoch empfohlen, das $ zu verwenden _REQUEST[]-Array, das die Arrays $_POST[] und $_GET[] kombiniert:

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

Das obige ist der detaillierte Inhalt vonWarum erhalte ich Syntaxfehler, wenn ich verschachtelte ternäre Operatoren in PHP verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn