var foo, bar;
foo = 'hello'; // first
bar = 'world'; // otherwise
var baz = foo || bar;
console.log(baz);
Fragen, was ist die PHP-Art, das Obige zu tun? Ich weiß schon, über die ternary
Betreiber:Variable mit Bedingung deklarieren
$foo = $bar = '';
$foo = 'hello'; // first
$bar = 'world'; // otherwise
$baz = $foo ? $foo : $bar;
echo $baz;
.. aber ich bin auf der Suche hier zu optimieren, weil die $foo
in meinem Fall ist MySQL-Abfrage und ich glaube, die zwei Mal ausgeführt beim Einchecken und dann auf Zuordnung (?). Wie auch immer, ich möchte wissen, ob es eine elegantere DRY-Methode gibt.
Edit:
In PHP7 können Sie tun:
$baz = $foo ?? $bar;
... aber auf der Suche nach etwas in PHP 5+
Super! Vielen Dank. Entspricht es dem PHP7 '??'? – 3zzy
@ 3zzy siehe meine Bearbeitung. '$ foo = false; $ baz = $ foo ?? "alt"; $ qux = $ foo?: "alt"; 'sind verschieden. Aber für truthy Werte ist es dasselbe. – bwoebi
Ah ha, gut zu wissen. Vielen Dank! Obwohl ich auf PHP7 bin, wollte ich, dass der Code abwärtskompatibel ist. – 3zzy