動的表示のための連結における三項演算子
以下に例を示すように、連結内で if ステートメントを使用しようとすると、無駄になる可能性があります。 >
$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>';
解決策: 三項演算子の利用
if ステートメントはスタンドアロン ステートメントとして機能するため、文字列内の補間には適していません。代わりに、この目的には三項演算子の方が適しています。(conditional expression)?(output if true):(output if false);
連結内での実装
連結内に三項演算子を効果的に組み込むには、次の例を検討してください:$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';
ネストされた三項演算子
さらに複雑な条件評価の場合、以下に示すように、ネストされた三項演算子を使用できます。以上が文字列連結で動的表示に三項演算子を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。