Heim  >  Fragen und Antworten  >  Hauptteil

Seltsames Verhalten des ternären Operators und der String-Verkettung?

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粉919464207P粉919464207387 Tage vor502

Antworte allen(2)Ich werde antworten

  • P粉204079743

    P粉2040797432023-10-22 22:16:47

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

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

    Antwort
    0
  • P粉448130258

    P粉4481302582023-10-22 09:37:19

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

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

    Antwort
    0
  • StornierenAntwort