Fragezeichen-Symbol in PHP
- Einführung in den ternären Operator in PHP
-
Bewertung von
True
- undFalse
-Ausdrücken mit dem ternären Operator in PHP
In PHP wird der Fragezeichen-Operator ?
als ternärer Operator oder bedingter ternärer Operator bezeichnet. Dieser Artikel geht ausführlich auf den ternären Operator in PHP ein.
Einführung in den ternären Operator in PHP
Der bedingte ternäre Operator ?
wird auch als bedingter Ausdruck oder ternärer Operator bezeichnet. Er hat die folgende Syntax:
$variable = (condition) ? value_if_true : value_if_false;
Hier ist eine Aufschlüsselung der Komponenten:
-
Bedingung
: Ein boolescher Ausdruck, der ausgewertet wird. -
Wert_wenn_wahr
: Der Wert, der$variable
zugewiesen wird, wennBedingung
wahr ist. -
Wert_wenn_falsch
: Der Wert, der$variable
zugewiesen wird, wennBedingung
falsch ist.
Der ternäre Operator überprüft die Bedingung
. Wenn sie wahr ist, wird Wert_wenn_wahr
an $variable
zugewiesen. Andernfalls wird Wert_wenn_falsch
zugewiesen.
Beispielcode:
<?php
$num = 10;
$result = ($num % 2 == 0) ? "Even" : "Odd";
echo "The number $num is $result.";
?>
Ausgabe:
The number 10 is Even.
Wir können den ternären Operator verwenden, um die if-else
-Konstrukte zu verkürzen und die Lesbarkeit des Codes zu verbessern. Wir können ihn verwenden, um einfachere bedingte Ausdrücke zu schreiben.
Beispielcode:
<?php
$count = (true) ? 1 : 0;
if (true)
{
$count = 1;
}
else
{
$count = 0;
}
echo $count;
?>
Ausgabe:
1
Es kann jedoch schwierig sein, den Code zu lesen, wenn wir den ternären Operator verkettet oder verschachtelt verwenden. Ein weiterer Nachteil des ternären Operators besteht darin, dass es schwierig ist, den Code zu debuggen, da wir keine Breakpoints in den Unterexpressionen platzieren können.
Bewertung von True
- und False
-Ausdrücken mit dem ternären Operator in PHP
Wir werden uns die Verwendung des ternären Operators ansehen. Das folgende Beispiel wird den true
-Ausdruck auswerten und den Codeblock entsprechend ausführen.
Die Funktion canVote()
wird bestimmen, ob eine Person wählen darf oder nicht. Zuerst wird die Variable $age
ausgewertet, ob sie größer oder gleich 18
ist.
Als nächstes rufen wir die Funktion canVote()
mit dem Wert 21
als Parameter auf, der das gesetzliche Wahlalter darstellt. Hier wird der Ausdruck als true
ausgewertet und der zweite Ausdruck wird ausgeführt.
Beispielcode:
<?php
function canVote($age){
echo $age>=18 ?"you can vote": "you cannot vote";
}
canVote(21);
?>
Die Funktion canVote()
wird bestimmen, ob eine Person wählen darf oder nicht. Zuerst wird die Variable $age
ausgewertet, ob sie größer oder gleich 18
ist.
Als nächstes rufen wir die Funktion canVote()
mit dem Wert 21
als Parameter auf, der das gesetzliche Wahlalter darstellt. Hier wird der Ausdruck als true
ausgewertet und der zweite Ausdruck wird ausgeführt.
Ausgabe:
you can vote
Im nächsten Beispiel wird, wenn ein Wert kleiner als 18
übergeben wird, der Vergleichsausdruck als false
ausgewertet. Daher wird der dritte Ausdruck Du kannst nicht wählen
angezeigt.
Beispielcode:
<?php
function canVote($age){
echo $age>=18 ?"you can vote": "you cannot vote";
}
canVote(17);
?>
Ausgabe:
you cannot vote
In anderen Fällen liefert die Auswertung des Ausdrucks einen false
-Wert. Zum Beispiel, wenn der Ausdruck einen null
-Wert, Nan
, 0
oder einen leeren Wert liefert, wird der Ausdruck einen false
-Wert zurückgeben.
Das folgende Beispiel zeigt die Bedingungen für den falsy
-Wert. Der ternäre Operator wird den dritten Ausdruck ausführen, wenn diese Werte ausgewertet werden.
Beispielcode:
<?php
function Car($name){
echo $name?$name:"no name";
echo "<br>";
}
Car("Tesla");
Car(null);
Car("");
Car(0);
?>
Ausgabe:
Tesla
no name
no name
no name
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn