3 Stimmen

PHP - $Variable = Wert1 oder Wert2

$val1 = false;
$val2 = 10;

$variable = $val1 || $val2;

der obige Code macht $variable = true .

Gibt es einen Operator in PHP, der die $variable nehmen den Wert von $val2 wenn $val1 falsch ist? Ich dachte || würde dies tun, aber es gibt nur true zurück, wenn einer der Werte true ist, oder false, wenn beide false sind...

7voto

code_burgar Punkte 11551

Der ternäre Operator

$variable = ($val1) ? $val1 : $val2;

oder (in PHP 5.3+ )

$variable = ($val1) ?: $val2;

3voto

svens Punkte 10900

Der Betreiber || macht ein logisches Oder, deshalb bekommt man nur true oder false zurück.

Möglicherweise möchten Sie PHP verwenden ternär Betreiber:

$variable = $val1? "default value" : $val2;

2voto

mario Punkte 141130

Sie können auch den Vorrang von Operatoren aufheben:

$variable = $value1  or  $variable = "value2";

or ist schwächer als = . Es wird besser lesbar, wenn Sie zusätzliche Leerzeichen hinzufügen. Aber es ist mehr oder weniger ein Workaround für das Fehlen von ?: in PHP<5.3.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X