PHPの三項演算子について簡単なサンプルコードで解説

12 回閲覧されました
みなさんこんにちは、jonioです。
今回は三項演算子について簡単なサンプルコードで解説します。
Laravelの無料学習サイトを作りました
Laravelを勉強したい人向けの無料の学習サイトを作りました。
ここからリンクに飛べますのでぜひ利用してください。
三項演算子とは
if-elseを簡単に記述することができます。
if-elseを使ったサンプルコードがあったとします。
<?php
$age = 20;
if ($age >= 18) {
$message = '大人です';
} else {
$message = '未成年です';
}
echo $message;
?>
// 結果は「大人です」これが三項演算子を使った場合は下記になります。
<?php
$age = 20;
$message = ($age >= 18) ? '大人です' : '未成年です';
echo $message;
?>
// 結果は「大人です」1行で済むので記述が楽になります。
三項演算子の基本の書き方は以下になります。
条件式 ? 真のときの値 : 偽のときの値;条件が複数ある場合
先ほどのサンプルコードは条件が1つだけでしたが2つ以上ある時も使えます。
ただ条件が3つ以上ある時はif文で書いた方がコードが複雑にならないと思います。
条件が2つの場合は以下の書き方をします。
<?php
$age = 15;
$message = ($age >= 18) ? '大人です' : ($age > 10) ? '少年です' : '幼児です';
echo $message;
?>
// 結果は「大人です」基本の書き方は「条件式 ? 真のときの値 : 偽のときの値;」ですが「偽のときの値」でさらに三項演算子を使えばいいです。
上記のサンプルコードでは「偽の時の値」が「($age > 10) ? ‘少年です’ : ‘幼児です’」になります。
省略した三項演算子の書き方
例えば下記のコードがあったとします。
$a ? $a : $b「条件式」と「真の時の値」が同じ値の場合は下記の書き方ができます。
$a ? $a : $b