三項演算子
三項演算子とは?
三項演算子とは、1つの演算子処理で3つの式を使用するための比較処理です。
条件式 ? 真の式 : 偽の式
はじめに条件式を評価し、式の結果がTRUEの場合は真の式を返し、結果がFALSEの場合は偽の式を返します。
条件式がTRUEの場合に真を返し、FALSEの時は偽を返すので、if (if~else)文に似た処理をしてくれることから条件演算子とも呼ばれています。
実際の使い方
-例文-
$value1 = 10;
$value2 = 30;
$ans = $value1 < $value2 ? 'value1' : 'value2';
echo $ans;
-結果-
value1
$ans = $value1 < $value2 ? 'value1' : 'value2';
変数$value1が変数$value2より小さいときの条件文。
'value1' : 'value2'
:より右側がtureだった時の処理
:より左側がfalseだった時の処理
その値を変数$ansに代入して出力。
今回の例文だと$value1の方が小さいので’value1’と出力されます。
三項演算子をif文で書くと以下のようになります。
-例文-
$value1 = 10;
$value2 = 30;
if($value1 < $value2){
$ans = 'value1';
}else{
$ans = 'value2';
}
echo $ans;
-結果-
value1
if文での条件分岐だと、何行も書く必要がありますが、直感的にわかりやすいです。
三項演算子の場合ですと可読性は下がるのかもしれませんが一行ですっきりと記述することができます。場合により使い分けられると便利ですね。