概要
仕事で三項演算子を使ったのでアウトプット。
三項演算子とは
条件 ? 出力1 : 出力2
条件に書き込んだ処理が真であれば出力1を、偽であれば出力2が処理される演算子です。
実行例1
「sankou.php」というファイルに三項演算子を使用したコードを書きました。
<?php
$var = 1;
$var1 = 2;
echo $var<1 ? $var : $var1,PHP_EOL;
実行すると、2が出力されます。
$ php sankou.php
2
条件に当たる部分が$var<1
です。変数$varには1が格納されているので、偽で判定されます。偽であるので、出力2に当たる$var1
が処理され、その変数の値である2がechoで出力されます。
三項演算子省略記法
条件 ?: 出力2
先ほどの出力1
を省略する記載方法です。
偽の時の処理は同じですが、真であった場合の処理が先ほどと変わり条件
が処理されます。
実行例2
次は「sankou_shoryaku.php」というファイルにコードを書きました。
<?php
$var = 1;
$var1 = 2;
echo $var ?: $var1,PHP_EOL;
実行すると、1が出力されます。
$ php sankou_shoryaku.php
1
条件$var
は、値が格納されていれば真と判定されます。今回$var
には値を格納しているので真になります。
出力1
に当たる部分が省略されているので$var
が処理されます。
よって、$var
がechoで処理される為、1が出力されます。
使い道
今回の例だと何の為に使うか使えるかがわからないかと思いますが、
変数に特定の値が格納されていれば別の処理メソッドを呼び出したい、などの時に有用です。