Was ist der Elvis-Operator in PHP und wie funktioniert er?

Linda Hamilton
Freigeben: 2024-11-24 05:39:18
Original
547 Leute haben es durchsucht

What is the Elvis operator in PHP and how does it work?

Zähmung des Elvis-Operators (?:) in PHP

Der mysteriöse ?:-Operator hat PHP-Code geschmückt und lässt Sie verwirrt zurück. Dieser prägnante Artikel befasst sich mit seiner rätselhaften Natur und enthüllt seinen wahren Zweck.

Enthüllung des ?:-Operators

Der ?:-Operator, auch bekannt als „Elvis-Operator“, " funktioniert ähnlich einem ternären Operator. Sein einzigartiges Merkmal liegt jedoch im Fehlen eines Ausdrucks, anhand dessen ausgewertet werden kann, ob sich das Prädikat als wahr erweist. Hier ist eine Aufschlüsselung seines Verhaltens:

Es wertet den linken Operanden aus, wenn der linke Operand wahr ist, d. h. nicht null, eine leere Zeichenfolge, falsch oder null.
Wenn der Wenn der linke Operand falsch ist, wird er nach rechts ausgewertet Operand.
Entscheidend ist, dass der Ausdruck für den linken Operanden nur einmal ausgewertet wird, um Effizienz zu gewährleisten.

Anschauliche Beispiele

Berücksichtigen Sie zur weiteren Verdeutlichung die Folgender Codeausschnitt:

$items = $items ?: $this->_handle->result('next', $this->_result, $this);
Nach dem Login kopieren

In diesem Fall, wenn $items wahr ist (nicht null oder nicht leer), wird der Wert von $items sich selbst zugewiesen. Wenn $items jedoch falsch ist, wird das Ergebnis von $this->_handle->result('next', $this->_result, $this) $items zugewiesen. Dadurch werden undefinierte Werte effektiv behandelt, indem ein Standardwert bereitgestellt wird.

Zusätzliche Anwendungen

Der ?:-Operator erweist sich auch in Selbstprüfungsszenarien als nützlich:

foo = foo ?: bar;
Nach dem Login kopieren

Hier wird foo der Wert von bar zugewiesen, wenn foo null oder falsch ist. Ansonsten bleibt foo unverändert.

Schaufenster der Vielseitigkeit

Um seine Vielseitigkeit zu veranschaulichen, betrachten Sie diese Beispiele:

var_dump(5 ?: 0); // 5
var_dump(false ?: 0); // 0
var_dump(null ?: 'foo'); // 'foo'
var_dump(true ?: 123); // true
var_dump('rock' ?: 'roll'); // 'rock'
var_dump('' ?: 'roll'); // 'roll'
var_dump('0' ?: 'roll'); // '0'
var_dump('42' ?: 'roll'); // '42'
Nach dem Login kopieren

Der Ursprung von „Elvis Operator“

Sein eigenartiger Spitzname „Elvis Operator“ leitet sich ab aufgrund seiner Ähnlichkeit mit den Haaren von Elvis Presley. So wie die Locken von Elvis entweder zu einer buschigen Pompadour gestylt oder nach hinten gekämmt waren, ist der linke Operand des Operators entweder wahr oder falsch und bestimmt den resultierenden Wert.

Das obige ist der detaillierte Inhalt vonWas ist der Elvis-Operator in PHP und wie funktioniert er?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage