Heim > Backend-Entwicklung > PHP-Tutorial > Warum liefern meine verschachtelten ternären Operatoren in PHP unerwartete Ergebnisse?

Warum liefern meine verschachtelten ternären Operatoren in PHP unerwartete Ergebnisse?

Linda Hamilton
Freigeben: 2024-12-28 21:02:18
Original
504 Leute haben es durchsucht

Why Are My Nested Ternary Operators in PHP Returning Unexpected Results?

Verschachtelte ternäre Operatoren in PHP für bedingte Zuweisungen

Sie sind auf ein Problem mit Ihrem PHP-Code gestoßen, bei dem Sie verschachtelte ternäre Operatoren verwenden wollten aber sie erhalten unerwartete Ergebnisse. Lassen Sie uns das Problem untersuchen und eine Lösung anbieten:

Der von Ihnen bereitgestellte Code:

$province = 7;
$Myprovince = (
($province == 6) ? "city-1" :
($province == 7) ? "city-2" :
($province == 8) ? "city-3" :
($province == 30) ? "city-4" : "out of borders"
);
Nach dem Login kopieren

In diesem Code beabsichtigen Sie, unterschiedliche Städtenamen basierend auf dem Wert von $province zuzuweisen. Sie erhalten jedoch für jeden Wert „city-4“, da die ternären Operatoren nicht richtig verschachtelt sind.

Um verschachtelte ternäre Operatoren korrekt zu verwenden, müssen Sie jeden ternären Operator in Klammern setzen. Der richtige Code sollte so aussehen:

$province = 7;
$Myprovince = (($province == 6) ? "city-1" : ((($province == 7) ? "city-2" : ((($province == 8) ? "city-3" : ((($province == 30) ? "city-4" : "out of borders"))))));
Nach dem Login kopieren

Durch die Verschachtelung der ternären Operatoren auf diese Weise wertet der Code die Bedingungen in der richtigen Reihenfolge aus und weist den entsprechenden Stadtnamen basierend auf dem Wert von $province zu.

Das obige ist der detaillierte Inhalt vonWarum liefern meine verschachtelten ternären Operatoren in PHP unerwartete Ergebnisse?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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