人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

とあるPHPプログラム中に下記のような行があります。
これはどのような処理をしているものかわからなかったため質問させてください。

$foo['aaa'] = $foo['aaa'] ? $foo['aaa']:POO;

なお、「POO」は定数として定義してあるものということはわかっています。
わからなかったのは文中にいきなり「?」と「:」が出てきているので、これらがどのような処理が行われるものなのか、です。
できればPHPのマニュアルで調べたかったのですが、どう検索すれば出てくるのか見当がつかなかったもので、こちらで質問させていただきました。
PHPのマニュアルの該当箇所を教えていただける等でも結構ですので、どなたかわかる方はお教えいただけますでしょうか。
よろしくお願いいたします。

●質問者: n_maco2
●カテゴリ:インターネット ウェブ制作
✍キーワード:AAA PHP とある プログラム マニュアル
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● b-wind
●28ポイント

そういう演算子です。

リンク先の下のほうに説明があります。


「3項演算子」と呼ばれる事もありますが、それは正確ではなく「3項演算子」分類されるもののうち一つと言うのが本来の形です。

ただし、自分の知る全ての言語で3項演算子はこれ一つしかありません。

◎質問者からの返答

いつもありがとうございます

そういえば名前だけは聞いたことがありました。勉強してみたいと思います。


2 ● くまっぷす
●45ポイント ベストアンサー

http://php.benscom.com/manual/ja/language.operators.comparison.p...

三項演算子です。

(expr1) ? (expr2) : (expr3) という式は、式1 が TRUE の場合に 式2 を、 式1 が FALSE の場合に 式3 を値とします。

$foo['aaa'] = $foo['aaa'] ? $foo['aaa']:POO;

の場合は$foo['aaa']がtrue

(どういう場合にfalseになるかは

http://www.res-system.com/item/127

を参照)

ならばそのまま何もしない、falseならば固定値POOを入れる、という処理です。

例えば未設定のままの変数を作りたくない場合の処理ですね。

◎質問者からの返答

ありがとうございます。

勉強してみたいと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ