この記事では、PHPでswitch文を使う方法について書いています。
最初にswitch文についての説明をします。
そのあとにswitch文を使用した、簡単なプログラムを作成して、switch文について学んでいきます。
■この記事の目標(作るもの)について
switch文を使用した簡単なプログラムを作成し、下記のように画面に結果を出力して確認します。
PHPのswitch文とは?
PHPのswitch文も他の言語と同じように、条件分岐するために使用します。
switch文に単一の変数を渡して、caseで条件分岐します。
下記のように、変数を渡して、それぞれのcaseで分岐します。
switch(変数) {
case ケース1:
echo "何らかの処理1";
break;
case ケース2:
echo "何らかの処理2";
break;
case ケース3:
echo "何らかの処理3";
break;
default:
echo "どれにも当てはまらない場合";
}
switchを抜ける場合はbreakが必要で、breakがない場合は下に処理が続いていきます。
breakがない場合を考えてみると、例で言うと、ケース1の条件に合致した場合に、“何らかの処理1”,”何らかの処理2″…と後続処理も行われて、続けて出力されていきます。
defaultを書くこともできて、default文は、どのcaseにも一致しない場合に処理されます。
PHPでswitch文を使ってみよう
実際にswitch文を使用して、処理を書いてみましょう。
前回作成したcodelike_web_dockerの配下に、switch_sweets.phpという名前で下記の内容で保存します。
<?php
echo "switch test1<br />";
$sweets = "cookie";
switch ($sweets) {
case "chocolate":
echo "チョコレートです。"."<br />";
break;
case "cookie":
echo "クッキーです。"."<br />";
break;
case "candy":
echo "キャンディです。"."<br />";
break;
}
echo "<br />switch test2<br />";
$sweets = "apple";
switch ($sweets) {
case "chocolate":
echo "チョコレートです。"."<br />";
break;
case "cookie":
echo "クッキーです。"."<br />";
break;
case "candy":
echo "キャンディです。"."<br />";
break;
default:
echo "お菓子ではないです。"."<br />";
break;
}
echo "<br />switch test3<br />";
$sweets = "candy";
switch ($sweets) {
case "chocolate":
case "cookie":
case "candy":
echo "お菓子です。"."<br />";
break;
default:
echo "お菓子ではないです。"."<br />";
break;
}
解説
コードの説明です。
$sweets
という変数を用意して、それぞれswitch文にかけて動作を確認できるものを作成しました。
caseの確認箇所
最初は、$sweets
には“cookie”を格納しています。
case文として、“chocolate”,”cookie”,”candy”を用意しています。
2番目の“cookie”のケースに合致するため、ここでは“クッキーです。”が出力されて処理が終わります。
defaultの確認箇所
次は、$sweets
に“apple”を格納しています。
同じようにケースを用意していますが、ここではdefault
の項目を追加しています。
// ----- 省略 -----
default:
echo "お菓子ではないです。"."<br />";
break;
}
ここでは、$sweets
の値がどのケースにも属さないため、“お菓子ではないです。”が出力されます。
複数caseの確認箇所
次は、$sweets
に“candy”を格納しています。
ここでは、3つのそれぞれのケースをまとめてみました。
$sweets
の値は“candy”なので“お菓子です。”が出力されて処理が終わります。
breakがない場合は、処理が下に処理が続いていくので、“chocolate”,”cookie”,”candy”のどれでも“お菓子です。”になります。
動作確認
想定通りの結果が出力されているか確認してみましょう。前回作成した環境を立ち上げます。
switch_sweets.phpの編集が終わったら、保存して下記にアクセスします。
`http://localhost:8080/switch_sweets.php`
想定した結果が返ってきました!
おわりに
今回はswitch文を見ていきました。
単純なif文を沢山書くような場合は、switch文を使用した方が、すっきり書くことができるので積極的に使っていきましょう。
その他のPHP入門のオススメ記事
そのほかに、このブログで書いているオススメ記事をご紹介します。
for文を使ってみよう
次回は作った環境を使用して、PHPのfor文を使ってみましょう。
PHP入門の記事一覧に戻る
他のPHP入門記事もありますので、合わせてご確認ください。
コメント