Heim  >  Artikel  >  Backend-Entwicklung  >  Ternärer PHP-Operator

Ternärer PHP-Operator

墨辰丷
墨辰丷Original
2018-06-09 09:59:3684237Durchsuche

In diesem Artikel wird hauptsächlich der ternäre Operator von PHP vorgestellt. Ich hoffe, dass er für alle hilfreich ist.

Empfohlenes Handbuch:PHP-Handbuch zum Selbststudium

Syntax des ternären Operators: Ergebnis 1: Ergebnis 2 Hinweis: Die Position vor dem Fragezeichen ist die Bedingung für die Beurteilung. Wenn die Bedingung erfüllt ist, ist das Ergebnis 1, und wenn sie nicht erfüllt ist, ist das Ergebnis 2.

Lass uns das unten im Detail besprechen.

Als ich heute meine Arbeit online überarbeitete, stieß ich auf einen Satz, den ich nicht verstehen konnte:

$if_summary = $row['IF_SUMMARY']==2?'是':'否';

Dieser Satz bedeutet dasselbe wie

if($row['IF_SUMMARY']==2){
$if_summary="是";
}else{
$if_summary="否";
}

Die Funktion des Der ternäre Operator ist derselbe wie die Prozessanweisung „if...else“ ist konsistent, in einer Zeile geschrieben, der Code ist sehr prägnant und die Ausführungseffizienz ist höher.

Empfohlene verwandte Artikel:
1.Ternärer PHP-Operator: schnell oder nicht?
2.Ein einfacher Vergleich des ternären Operators und des Null-Koaleszenzoperators in PHP
3.Was sind die häufigsten Operatoren in PHP
Verwandte Videoempfehlungen:
1.Dugu Jiujian (4)_PHP-Video-Tutorial

Angemessene Verwendung von drei Metaoperatoren in PHP-Programmen kann Skripte prägnanter und effizienter machen.

Das Codeformat ist wie folgt:

(expr1) ? (expr2) : (expr3);

Erklärung:

Wenn die Bedingung „expr1“ wahr ist, führen Sie die Anweisung „expr2“ aus, andernfalls führen Sie „expr3“ aus.

Um die gleiche Funktion zu erreichen, müssen Sie bei Verwendung von bedingten Flussanweisungen mehrere Codezeilen schreiben:

if(expr1) {

expr2;
} else {
expr3;
}

Es ist ersichtlich, dass die oben erwähnte Güte des ternären Operators nicht der Fall ist eine Übertreibung.

In den meisten Fällen verwenden wir den ternären Operator jedoch nur, wenn der Code relativ einfach ist, das heißt, wenn die Ausführungsanweisung nur aus einem einzigen Satz besteht. Beispiel:

$a>$b ? print "a大于b" : print "a小于b";

Tatsächlich kann der ternäre Operator erweitert und verwendet werden, wenn die festgelegte Bedingung wahr ist oder nicht, kann die Ausführungsanweisung aus mehr als einem Satz bestehen:

(expr1) ? ( expr2).(expr3) : (expr4).(expr5);

Wir können deutlich sehen, dass mehrere Ausführungsanweisungen mithilfe von Zeichenfolgenoperationssymbolen (".") verbunden werden können Ausführungsanweisung Umgeben Sie sie mit kleinen spitzen Klammern, um anzuzeigen, dass es sich um eine unabhängige und vollständige Ausführungsanweisung handelt.

Nach dieser Erweiterung ähnelt seine Funktion eher der Prozessanweisung „if...else“.

Gleichzeitig kann der ternäre Operator auch verschachtelt verwendet werden.

Zum Beispiel, wenn a größer als b ist:

Wenn a kleiner als c ist, dann ist x=c-a, andernfalls ist x=a-c;Andernfalls, wenn a kleiner als ist b: Wenn b kleiner als c ist, dann ist x=c-b, andernfalls x=b-c:

$a>$b ? $x=($a<$c ? $c-$a : $a-$c) : $x=($b<$c ? $c-$b : $b-$c);

Der verschachtelte ternäre Operator ist nicht sehr gut lesbar und es kann in Zukunft Probleme mit der Codepflege geben, aber im Vergleich zu „ if.. .else“ und andere Prozessanweisungen sind in der obigen Situation tatsächlich zu prägnant, was ihre Attraktivität ausmacht.

Für diejenigen, die gerne faul sind und die Einfachheit des Codes anstreben, sollte die Verwendung des ternären Operators als Ersatz für die if-Prozessanweisung eine ausgezeichnete Wahl sein. Auch wenn Sie kein anderes „Element“ als den Bedingungssatz im „Ternär“ berücksichtigen müssen, ist die Verwendung des Ternäroperators immer noch prägnanter als if-Anweisungen.

Die Syntax der folgenden Anweisungen ist korrekt, sie lassen das zweite oder dritte „Element“ in einer kleinen Anführungszeichenform weg:

$a>$b ? print "Yes" : "";
$a>$b ? &#39;&#39;: print &#39;No&#39;;

Es sollte beachtet werden, dass:

Wann Bei Verwendung des ternären Operators wird empfohlen, die print-Anweisung anstelle der echo-Anweisung zu verwenden.

Achten Sie auf das Verständnis der folgenden Reihe von Anweisungen:

$str = $_GET[&#39;abc&#39;] ? &#39;wangjinbo&#39; : &#39;wjb&#39;;

Dies kann nicht so verstanden werden: Wenn $str gleich $_GET['abc'] ist, lautet die Zuweisung 'wangjinbo ' andernfalls ist die Zuweisung 'wjb' ;

Weil eins: == zur Beurteilung der Gleichheit verwendet werden sollte;

Weil zwei: die Syntax des ternären Operators wie oben gezeigt ist: (expr1) ? (expr2) : (expr3), offensichtlich kann das obige binäre, ternäre „wangjinbo“ oder „wjb“ allein keinen sinnvollen Ausdruck bilden; 🎜>$_GET[' abc'] ist ein Nullwert (das heißt, ob (false), ' ', null, 0 und undifine in PHP alle dem booleschen Wert false entsprechen. Zu diesem Zeitpunkt ist $str der Wert 'wjb' zugewiesen, andernfalls der Wert 'wangjinbo'; Bedingung in der IF-Anweisungsbedingung, der Inhalt selbst $_GET['abc'] ist wahr und die Bedingung ist wahr, str wird der Wert 'wangjinbo' zugewiesen, andernfalls wird ihm der Wert 'wjb' zugewiesen Der Wert ist wahr, wahr (wahr) bedeutet, dass es einen Wert gibt, und falsch (falsch) bedeutet, dass es keinen Wert gibt.

Zusammenfassung

: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:


Drei häufige Verwendungen von PHP zum Simulieren von Post-Anfragen

PHP ist für Dateivorgänge gedacht und Methoden der String-Verschlüsselung

PHP-Löschung, Konvertierung, Gruppierung und Sortierung von Arrays

Das obige ist der detaillierte Inhalt vonTernärer PHP-Operator. 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