Maison >développement back-end >tutoriel php >Comment pouvez-vous utiliser l'opérateur ternaire pour l'affichage dynamique dans la concaténation de chaînes ?

Comment pouvez-vous utiliser l'opérateur ternaire pour l'affichage dynamique dans la concaténation de chaînes ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-26 11:31:02596parcourir

How Can You Use the Ternary Operator for Dynamic Display in String Concatenation?

Opérateur ternaire dans la concaténation pour l'affichage dynamique

Tenter d'utiliser une instruction if dans la concaténation, comme illustré ci-dessous, peut s'avérer futile :

$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>';

Solution : Utilisation de l'opérateur ternaire

L'instruction if sert d'instruction autonome, la rendant impropre à l'interpolation dans des chaînes. Au lieu de cela, l’opérateur ternaire est plus approprié à cette fin. Il prend la forme :

(conditional expression)?(output if true):(output if false);

Implémentation au sein de la concaténation

Pour incorporer efficacement l'opérateur ternaire dans la concaténation, considérons l'exemple suivant :

$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';

Opérateurs ternaires imbriqués

Pour des évaluations conditionnelles encore plus complexes, des opérateurs ternaires imbriqués peuvent être utilisés, comme illustré ci-dessous :

$i = 0 ;
$j = 1 ;
$k = 2 ;
$result = 'Greater One is'. $i > $j ? ( $i > $k ? 'i' : 'k' ) : ( $j > $k ? 'j' :'k' ).'.';

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn