Ternärer Operator in der Verkettung für die dynamische Anzeige
Der Versuch, eine if-Anweisung innerhalb der Verkettung zu verwenden, wie unten beispielhaft dargestellt, kann sich als erfolglos erweisen:
$display = '<a href="' . $row['info'] . '" onMouseOver="' . if($row['type']=="battle"){ . 'showB' . } else { . 'showA'() . "><div class='" . $row['type'] . "_alert" . '" style="float:left; margin-left:-22px;" id="' . $given_id . '"></div></a>';
Lösung: Verwendung des Ternäroperators
Die if-Anweisung dient als eigenständige Anweisung und ist daher für die Interpolation innerhalb von Zeichenfolgen ungeeignet. Stattdessen ist der ternäre Operator für diesen Zweck besser geeignet. Es hat die Form:
(conditional expression)?(output if true):(output if false);
Implementierung innerhalb der Verkettung
Um den ternären Operator effektiv in die Verkettung einzubinden, betrachten Sie das folgende Beispiel:
$i = 1; $result = 'The given number is'.($i > 1 ? 'greater than one': 'less than one').'. So this is how we can use ternary inside concatenation of strings';
Verschachtelte ternäre Operatoren
Für noch komplexere bedingte Auswertungen können verschachtelte ternäre Operatoren verwendet werden, wie unten dargestellt:
$i = 0 ; $j = 1 ; $k = 2 ; $result = 'Greater One is'. $i > $j ? ( $i > $k ? 'i' : 'k' ) : ( $j > $k ? 'j' :'k' ).'.';
Das obige ist der detaillierte Inhalt vonWie können Sie den ternären Operator für die dynamische Anzeige bei der String-Verkettung verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!