PHP switch文について...(P7)

今日はswitch文について、書いてみます。

switchは一つの値に対して、複数条件分岐しないといけない時に便利です。

if - else ifでも書けますが、switch文を使うことにより、より簡潔に書くことができます。

見やすくなるので、いいと思います。積極的に使っていきましょう。

実際にコードを書きます。

下記をtestSwitch.phpで保存して、実行しましょう(コマンド:php testSwitch.php)


<?php
    // if文を使って分岐する
    $num = 0;
    if($num == 0){
        echo "apple"."\n";
    } else if($num == 1){
        echo "grape"."\n";
    } else if($num == 2){
        echo "orange"."\n";
    } else{
        echo "other"."\n";
    }

    // switch文を使って分岐する
    $num2 = 2;
    switch($num2){
        case 0:
            echo "apple"."\n";
            break;
        case 1:
            echo "grape"."\n";
            break;
        case 2:
            echo "orange"."\n";
            break;
        default:
            echo "other"."\n";
            break;
    }

実行結果:

apple
orange

$num,$num2の変数を分岐させて、果物名を出力してるプログラムですw

最初の$numを使っている箇所は、if文で分岐していて

次の$num2の箇所は、switch文で分岐させてみました

switch文の書き方は、「switch(値)」で、丸カッコの中に、値を書いて、

「case 値:」で判定させます。今回はcase 0: case 1:で0の時, 1の時、、

のような感じで作っています。breakはcaseで区切ったところの最後に入れます。

ない場合は、次のケースも処理をしてしまいます。

例えば、$num2 = 0の場合で、grapeの下にbreakがない場合は、

出力が apple grape となります。

breakがない場合は次の処理が判定なく行われてしまうので注意です。

defaultはif文で言うところの、elseで何にも当てはまらなかった場合に

入ってきます。

ifばかりだと、コードがみにくくなるので、積極的に使って行った方がいいかと思います! switch公式 リファレンス

それでは、また。