Instructions conditionnelles dans la concaténation de chaînes
Dans l'extrait de code fourni, une tentative est faite pour utiliser une instruction if dans la concaténation d'une chaîne . Cependant, comme cela a été constaté, cette approche ne fonctionne pas.
Comprendre les déclarations if
Une déclaration if est une déclaration autonome représentant une pensée complète. Il évalue une condition et exécute un bloc de code uniquement si cette condition est vraie. Par conséquent, il ne peut pas être utilisé dans le cadre d'une concaténation de chaînes.
Opérateurs ternaires : une solution pour la concaténation
Pour résoudre ce problème, des opérateurs ternaires peuvent être utilisés. Les opérateurs ternaires fournissent un moyen abrégé d'écrire des expressions conditionnelles :
(conditional expression)?(value if true):(value if false);
Dans l'exemple fourni, l'opérateur ternaire pourrait être utilisé comme suit :
<code class="php">$display = '<a href="' . $row['info'] . '" onMouseOver="'; $display .= ($row['type'] == 'battle') ? 'showB()' : 'showA()'; $display .= '"><div class="' . $row['type'] . "_alert" . '" style="float:left; margin-left:-22px;" id="' . $given_id . '"></div></a>';</code>
Opérateurs ternaires imbriqués
Les opérateurs ternaires imbriqués peuvent également être utilisés, comme démontré ci-dessous :
<code class="php">$result = 'Greater One is' . ($i > $j ? ($i > $k ? 'i' : 'k') : ($j > $k ? 'j' : 'k')) . '.';</code>
Cette approche permet une logique conditionnelle concise et lisible dans les scénarios de concaténation de chaînes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!