Frage

  

Mögliche Duplizieren:
   schnelle PHP-Syntax Frage

return $add_review ? FALSE : $arg;

Was Fragezeichen und Doppelpunkt bedeuten?

Danke

War es hilfreich?

Lösung

Dies ist der PHP ternärer Operator (auch als bedingter Operator bekannt) -., wenn die erste Operand true ausgewertet wird, als zweite Operanden bewerten, auch als dritter Operand bewertet

Betrachten Sie es als eine „if“ Anweisung, die Sie in Ausdrücken verwenden können. Kann bei der Herstellung präzise Aufgaben sehr nützlich sein, die auf einer Bedingung abhängig, z.

$param = isset($_GET['param']) ? $_GET['param'] : 'default';

Es gibt auch eine abgekürzte Version dieses (in PHP 5.3 an). Sie können die mittleren Operanden auslassen. Der Bediener wird als erster Operand, wenn es wahr ist, und der dritte Operand bewerten anders. Zum Beispiel:

$result = $x ?: 'default';

Es ist erwähnenswert, dass der obige Code bei der Verwendung von zB $ _GET oder $ _POST Variable undefiniert Index Hinweis werfen und verhindern, dass wir eine längere Version, mit isset oder ein null-Koaleszenz-Operator , die in PHP7 eingeführt wird:

$param = $_GET['param'] ?? 'default';

Andere Tipps

Es ist die dreiteilige Form des if-else-Operators. Die obige Aussage im Grunde liest sich wie folgt:

if ($add_review) then {
    return FALSE; //$add_review evaluated as True
} else {
    return $arg //$add_review evaluated as False
}

Sehen Sie hier für weitere Details zu dem ternären op in PHP: http: //www.addedbytes. com / php / ternär conditionals /

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top