PHP: if/else Kurzschreibweise in einer String Concatenation

16.01.2012 12:27 Uhr

Hi zusammen!

Ich finde ja die Kurzschreibweise der if/else Audrücke total genial! Sowas wie:

string = ($test=='true') ? 'if true' : 'if else';

Funktioniert das Ganze auch bei einer String concatenation? Ich find nix. Ich würde gern einen Ausdruck wie diesen hier machen:

$string = 'Das ist der Anfang' 
          . ($test=='true') ? 'Text-Mitte if true' : 'nix if else' 
          . 'das ist dann das Ende';

Dieser Ausdruck funktioniert natürlich nicht. Mache ich irgendwo einen Fehler, oder geht es einfach nicht?!

2 Antworten

#1

16.01.2012 12:31 Uhr

Hi Viktor,

das ist kein Problem, du bist schon fast am Ziel, hast lediglich einen Syntax-Fehler.

Die Klammern sind falsch gesetzt, so sollte es klappen:

$string = 'Das ist der Anfang' . ( $test == true ? 'Text-Mitte if true' : 'nix if else' ) . 'das ist dann das Ende';

#2

16.01.2012 12:35 Uhr

super! Danke! funktioniert!

Ähnliche Fragen



Datenschutzerklärung · Impressum