ホームページ > php教程 > php手册 > PHP 三項演算子の結合性の概要

PHP 三項演算子の結合性の概要

WBOY
リリース: 2016-06-13 12:03:22
オリジナル
1156 人が閲覧しました

まず、三項演算式を見てみましょう。

コードをコピーします。 コードは次のとおりです。


< ?php
$a=1;$b=2;$c=3;$d=4;
echo $a<$b?'xx':$a<$c?'yy':$ a<$d ?'zz':'oo';
?>


一般的には、他の言語 (C や Java など) の規則に従って、上記のコードは次のとおりです:

コードをコピー コードは次のとおりです:


$a<$b => ; true => 'xx' ==> End


その後の演算は無視されます。 PHP での上記のコードの結果は 'zz' です。...なんと、これは不正ではありませんか...
私は古いルールに従い、Google にアドバイスを求めなければなりませんでした。 PHP の三項演算は左結合であることを突然理解しました。
上記のコードに 2 つの括弧を追加します。


コードをコピーします。 コードは次のとおりです。

< ?php
$a=1;$b=2;$c=3;$d=4; ($a<$b?'xx':$a<$c)?'yy ':$a<$d)?'zz':'oo'

; 🎜>一目瞭然、これがphpの動作ロジックです:



コードをコピー

コードは次のとおりです: $a<$b => 'xx' => 'yy' => 終了

これには 'xx' => true と 'xx' => true という 2 種類の変換プロセスが必要です。

このプロセスが面倒かどうかはわかりません。理解しています...
最後に、もう一度上記のコードに戻り、C のような右結合に変更します。




コードをコピー

コードは次のとおりです:

$a=1;$b =2;$c=3;$d=4; echo $a<$b; ?'xx':($a<$c?'yy':($a<$d?'zz':' oo'));

// 括弧の位置を変更することはできません。 PHP では括弧を省略します

?>


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート