【PHP】if文を一行にする方法【三項演算子とは?】超見やすい

9月 30, 2020

phpのif文をシンプルに 三項演算子とは?

三項演算子でif文を一行にする方法とは?

めだか皇帝
こんにちは!めだか皇帝@medakabloger )です!ブログ収益は最高で月30万円以上です!

プログラミング学習を頑張っています。学習の過程はツイッターに随時アップしていますが、先日はこんなツイートをしました。

上記のサンプルコードはプログラミング学習のYouTubeチャンネル『Web万屋エンジニアチャンネル』の例題のコードです。if-else文ですね。

Web万屋エンジニアチャンネル

【PHP】if文を一行にする方法【三項演算子とは?】

とってもわかやすい解説で有益ですので、プログラミング初心者の方はぜひ参考にしてください。

Web万屋エンジニアチャンネル

下記の動画はPHPを網羅的に解説した有益な動画です。

この動画内でif-else文の解説があり、そのサンプルコードがさきほどのツイート内容です。

if-else文の解説部分はこちらです。

サンプルのコードはこんな感じでしたので、それを模写してツイートものが先ほどのコードです。

【PHP】if文を一行にする方法【三項演算子とは?】

-400をxに代入したら、もし$xが0以上であり、もし2で割った余りがゼロだったら正の偶数で、そうでなかったら正の奇数、もし$xが0以下であり、もし2で割った余りがゼロだったら負の偶数で、そうでなかったら負の奇数、いずれの場合でもなかったらゼロだよ。

って感じのコードです。$xに代入している-400を400にしたら、正の偶数、401にしたら正の奇数、-345にしたら負の奇数、0にしたらゼロだよになります。

【PHP】if文を一行にする方法【三項演算子とは?】

if-else文を理解するのに良い例文だと思いますので、ぜひ参考にしてくださいね!

if文はいろいろな記述ができる

【PHP】if文を一行にする方法【三項演算子とは?】

そんなツイートをしたところ、いつもお世話になっているこっぷさん(@prgkop)から、こんなリプをいただきました。

おお、なるほど!と言えないのが、プログラミング初心者の悲しいところ。

親切なこっぷさんのアドバイスをほとんど理解できないわたし。

もう何がなんだかわからなすぎて聞いちゃいました。

するとこんなお返事をいただきました!

え?偶数、奇数の判定部分は1つにできます?どういうことヽ(=´▽`=)ノ

三項演算子とは?

それを聞いて、さっそくネットでどうやったら良いかを調べて、こんな感じで返信させていただきました。

【PHP】if文を一行にする方法【三項演算子とは?】

すでにわたしはもうちんぷんかんぷん。ついていくのがやっとなんですけど、するとさらにこっぷさんは、

【PHP】if文を一行にする方法【三項演算子とは?】

三項演算子???

三項演算子とは?

【PHP】if文を一行にする方法【三項演算子とは?】

三項演算子とは、if文よりもカンタンに記述できるメリットがあります。

すぐに覚えられる!PHPで三項演算子を使う方法【初心者向け】

こっぷさんの三項演算子を使ったコードだと、最初に比べてかなり短いコードで済みます。

(条件式) ? (真式) : (偽式);

こういうのができると、コーディングの効率も早いし、シンプルでわかりやすくできそうですね。

動画のサンプルコードはこうでした。

<?php
    $x = -400;
    
    if($x > 0){
        if($x % 2 === 0){
            echo '正の偶数';
        } else{
            echo '正の奇数';
        }
    } else if ($x < 0){
        if($x % 2 === 0){
            echo '負の偶数だよ';
        } else{
            echo '負の奇数だよ';
        }
    } else {
        echo 'ゼロだよ';
    }
?>

こちらはWeb万屋エンジニアチャンネルで紹介されていた、if文をわかりやすく解説するためのサンプルコードですので、これはこれでとても参考になると思います。

そのうえで、こっぷさんが教えてくれた三項演算子を利用したシンプルなコードは以下のとおりです。

<?php
    $x = 400;
    
    if ($x === 0){
        echo "ゼロだよ";
    } else{
        $y = $x > 0 ? "正の" : "負の";
        $z = $x % 2 === 0 ? "偶数だよ" : "奇数だよ";
        
        echo $y . $z;
    }
?>

こっぷさんのコードは短くてシンプルで読みやすいですね。

いろんなコードの書き方があるんですね、とても勉強になりました。

こっぷさん、いつもご指導ありがとうございますm(_ _)m

まとめ 【PHP】if文を一行にする方法【三項演算子とは?】超見やすい

【PHP】if文を一行にする方法【三項演算子とは?】

if文は三項演算子を利用するとシンプルな読みやすいコードにできることがわかりました。

三項演算子とは、

(条件式) ? (真式) : (偽式);

で記述することができます。

プログラミング初心者にはちょっとハイレベルなお話で、わたしもいまだにピンと来ていないところもありますが、下記のコードを読み比べると、その違いがわかってくると思います。当然ながら、echoされる結果は同じになりますので、とても勉強になりますね。

<?php
    $x = -400;
    
    if($x > 0){
        if($x % 2 === 0){
            echo '正の偶数';
        } else{
            echo '正の奇数';
        }
    } else if ($x < 0){
        if($x % 2 === 0){
            echo '負の偶数だよ';
        } else{
            echo '負の奇数だよ';
        }
    } else {
        echo 'ゼロだよ';
    }
?>
<?php
    $x = 400;
    
    if ($x === 0){
        echo "ゼロだよ";
    } else{
        $y = $x > 0 ? "正の" : "負の";
        $z = $x % 2 === 0 ? "偶数だよ" : "奇数だよ";
        
        echo $y . $z;
    }
?>

三項演算子についてのもっと詳しい解説は下記よりご確認ください。

すぐに覚えられる!PHPで三項演算子を使う方法【初心者向け】

もうプログラミング独学が限界だ!もっと本格的なプログラミング学習がしたいって方は、プログラミングスクールの無料体験を受けてみましょう!



【無料体験】プログラミングスクールのTechAcademy 詳しくはコチラ

以上、【PHP】if文を一行にする方法【三項演算子とは?】超見やすいでした!

読者の方へメッセージ


めだか皇帝
毎月の固定費の節約は効果絶大です!貯金やおこづかいを増やそう!

格安SIMを検討しているあなたへ

僕はドコモ時代、毎月8,000円以上を支払っていました。それがmineoにしたら、ほぼ違和感なしに月2,000円台に。月6,000円以上の節約。年間で7万2千円以上の節約😅

奥さんもmineoに乗り換えたので、合計で年14万円以上の節約。14万円もあれば、旅行にも行けるし、おいしいものも食べられるし、欲しいものも買えますよ😆

でも、格安SIMの乗り換えって面倒ですよね。そんなあなたのためにmineoが事務手数料3,300円を無料にするキャンペーン実施中。

このタイミングで乗り換えないと絶対に損。お申し込みは今すぐに👍


mineoの契約が3300円もお得に

事務手数料無料キャンペーン

期間限定!お見逃しなく!





おすすめ格安SIMサービス



mineo


LINEMO


UQモバイル


ahamo


この記事を書いた人

めだか☆皇帝

マイネオ歴7年目(2016年01月~)🤗

格安SIMに移行して、奥さんと二人で70万円以上のスマホ代の節約に成功!
mineo(格安SIM)にすれば
毎月のスマホ代を安くできる💰
苦しい家計も楽になるよ🎵

おすすめプランは一択👉
マイピタ10ギガプラン×パケット通信プラス(無料)で1958円🔥
マイピタ10ギガプラン

マイネオのパケット放題プラスについて
マイネオのパケット放題プラス

月990円でパケット使い放題🔥マイネオの『マイそく』
マイネオの『マイそく』

-プログラミング

Copyright© めだか皇帝@格安SIM帝国 , 2024 All Rights Reserved.