Maison >développement back-end >tutoriel php >Pouvez-vous utiliser une instruction if dans la concaténation de chaînes en PHP ?
Une instruction if peut-elle être utilisée dans la concaténation ?
Dans le code PHP fourni, une tentative est faite pour utiliser une instruction if dans la concaténation sans succès. Cette approche peut-elle être utilisée ou s'agit-il d'une erreur de syntaxe ?
Réponse :
Non, il n'est pas possible d'utiliser une instruction if directement dans la concaténation de chaînes. Une instruction if est une instruction indépendante qui ne peut pas être intégrée dans une autre instruction.
Au lieu de cela, l'opérateur ternaire abrégé peut être utilisé pour afficher de manière conditionnelle des sections spécifiques de la chaîne.
<code class="php">$given_id = 1; while ($row = mysql_fetch_array($sql)) { $display = '<a href="' . $row['info'] . '" onMouseOver="' . ($row['type'] == "battle" ? 'showB' : 'showA')() . ';"> <div class="' . $row['type'] . "_alert\" style=\"float:left; margin-left:-22px;\" id=\"" . $given_id . '"</div></a>'; }</code>
Ici, l'opérateur ternaire attribue différentes valeurs à $display en fonction de la valeur de $row['type'].
Pour des conditions complexes, des opérateurs ternaires imbriqués peuvent également être utilisés :
<code class="php">$i = 0; $j = 1; $k = 2; $result = 'Greater One is' . $i > $j ? ( $i > $k ? 'i' : 'k' ) : ( $j > $k ? 'j' :'k' ) . '.';</code>
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!