PHP5.3の三項演算子は真ん中を省略できる

PHPの三項演算子。


[php]
// if文
if (1) { $result = 2; }
else { $result = 3; }
echo $result; // 2

// 三項演算子
$result = 1 ? 2 : 3;
echo $result; // 2

// こう書くと…?(※PHP5.3以降)
$result = 1 ?: 3;
echo $result; // 1
[/php]

三項演算子の真ん中を省略すると条件がTRUEと同等の場合、条件の値が返ってきます。
条件に論理型以外を持ってくる場合はPHPの型変換には気を付けて使いましょう。
?と:はくっつけても間にホワイトスペースを入れてもどちらでもOK。

PHP: 比較演算子 – Manual 三項演算子のところ


カテゴリー: 未分類 パーマリンク