Seltsames Verhalten des ternären Operators und der String-Verkettung?
P粉919464207
P粉919464207 2023-10-21 22:52:32
0
2
506

Hallo, ich frage mich nur, warum dieser Code (zumindest für mich) falsche Ergebnisse liefert.

Okay, vielleicht ist es meine Schuld

$description = 'Paper: ' . ($paperType == 'bond') ? 'Bond' : 'Other';

Ich vermute, wenn paperType gleich „Bond“ ist, lautet die Beschreibung „Paper: Bond“, wenn paperType nicht gleich „Bond“ ist, lautet die Beschreibung „Paper: Other“.

Aber wenn ich diesen Code ausführe, ist das Ergebnis, dass die Beschreibung „Anleihe“ oder „Andere“ lautet und mich verlässt Sie fragen sich, wo die Zeichenfolge „Paper:“ hingehört? ? ?

P粉919464207
P粉919464207

Antworte allen(2)
P粉204079743

与运算符优先级有关。您必须执行以下操作:

$description = 'Paper: ' . (($paperType == 'bond') ? 'Bond' : 'Other');
P粉448130258
$description = 'Paper: ' . ($paperType == 'bond' ? 'Bond' : 'Other');

尝试添加括号,以便将字符串按正确的顺序连接到另一个字符串。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage