dedlfix: IF Abfrage

Beitrag lesen

echo $begrüßung;

Hab mir eine IF Abfrage gebaut, die mir ein "falsches" Ergebnis liefert.
echo (1.1 <= 1.3) ? "green" : (1.1 <= 2) ? "yellow" : "red";

Mit einem Klammernpaar wird PHPs Verhalten deutlicher:

echo ( (1.1 <= 1.3) ? "green" : (1.1 <= 2) ) ? "yellow" : "red";

Das Ergebnis des ersten Klammernausdrucks ist "green". "green" entspricht wahr, also ist die Bedingung des zweiten ?: erfüllt und "yellow" wird ausgegeben.

Du möchtest hingegen dieses Verhalten:

echo 1.1 <= 1.3 ? "green" : (1.1 <= 2 ? "yellow" : "red");

Die Klammern um die Bedingung kannst du weglassen, Vergleiche binden stärker als der ternäre Operator.

echo "$verabschiedung $name";