php 三項演算子を使用してif文を1行で記述する
phpで、三項演算子を使用してif文を1行で記述するサンプルコードを記述してます。phpのバージョンは8.0です。
環境
- OS CentOS Linux release 8.0.1905 (Core)
- php 8.0.0
- nginx 1.14.1
三項演算子使い方
if文で記述された以下のコードを、
<?php
$x = 1;
if ($x == 1) {
$x = 0;
} else {
$x = 1;
}
echo $x; // 0
三項演算子を使用して記述すると、1行で記述することが可能です。
パフォーマンスも基本的に三項演算子の方がいいです。
<?php
$x = 1;
($x == 1) ? $x = 0 : $x = 1;
echo $x; // 0
構文は以下となります。ifは文ですが、三項演算子は式となります。
条件式 ? Trueの時の処理 : Falseの時の処理
式なので、以下のような使用方法が可能です。
<?php
$bool = TRUE;
('hoge'.($bool?'1':'2'))();
function hoge1(){ echo "hoge1";}
function hoge2(){ echo "hoge2";}
// hoge1
-
前の記事
Ruby 文字列から指定した範囲の文字を取得する 2020.12.03
-
次の記事
C# sizeofを使って型の変数が使用しているサイズを取得する 2020.12.03
コメントを書く