PHPでは、特定の条件が成立したとき、実行させたい処理をおこなうことができます。
たとえば、if文を使った場合を考えてみましょう。

 if(条件){
   条件が成立したときの処理;
 }

この場合では、()内に記述された条件が成立した場合のみ、処理を実行します。
条件が複数あるような場合では、条件ごとにif文を使用するよりも、switch文を使用すると、とても簡潔に記述することができます。
今回は、switch文を使用した分岐処理について解説したいと思います。
 

switch文の書き方とは?

説明

switch文は、全体を{ }で囲みます。
{}内には、複数のcase文を並べて分岐処理を行ないます。
switch文で指定した条件式の結果(値)が、各case文に記述した値と等しい場合、そのcase文の処理を実行します。
また、各case文の末尾にはbreak文を入れて、case分の処理を実行したあと、switch文のブロックを抜けるようにするようにします。(break文を使用しないケースもあります。)

書式

switch(条件式){
case 値A:
 式の値が値Aのときの処理;
 break;
case 値B:
 式の値が値Bのときの処理;
 break;
case 値C:
 式の値が値Cのときの処理;
 break;
......
}

使用例

それでは、実際にphpのプログラムを書いてみましょう。
今回の例では、レストランでのコースメニューから、どのような料理が出されるのか、
コース内容を紹介するプログラムを作成してみました。わかりやすくするために、最初に実行結果から解説します。
実行結果

コースメニューが最初に表示されます。
レストランへようこそ!
コースメニューを選択してください。
◎コースA
◎コースB
◎コースC
確定

コースAを選択して「確定」ボタンを押した場合の出力内容

コンソメ 、ホタテサラダ、特性牛ステーキ、ガーリックライス、デザート・コーヒー

コースBを選択して「確定」ボタンを押した場合の出力内容

コンソメ、ビーフサラダ、大ヒラメのポワレ、ハッシュドビーフ、パン、デザート・コーヒー

コースCを選択して「確定」ボタンを押した場合の出力内容

ズワイガニのマリネ、ロールキャベツ、牛ステーキ、パン、デザート・コーヒー

コースメニューで、見たいコースメニューのラジオボタンを選択すると、選択されたコ
ース内容に切り替えて表示します。

サンプルプログラム
本サンプルプログラムは、下記のように、コース選択とコース内容の2つのプログラムで
構成します。
select.php(コース選択)

レストランへようこそ!<br>
コースメニュー選択してください。
<form action=" menu.php" method="post">
<p><input type="radio" name="cource" value="A" checked>コースA</p>
<p><input type="radio" name="cource" value="B">コースB</p>
<p><input type="radio" name="cource" value="C">コースC</p>
<p><input type="submit" value="確定"></p>
</form>

menu.php(コース内容)

<?php
switch ($_REQUEST['cource']) {
case 'A':
	echo 'コンソメ 、ホタテサラダ、特性牛ステーキ、ガーリックライス、デザート・コーヒー ';
	break;
case 'B':
	echo 'コンソメ、ビーフサラダ、大ヒラメのポワレ、ハッシュドビーフ、パン、デザート・コーヒー';
	break;
case 'C':
	echo 'ズワイガニのマリネ、ロールキャベツ、牛ステーキ、パン、デザート・コーヒー';
	break;
}
?>

おわりに

switch文は、ラジオボタンやセレクトボックスなどと組み合わせることで、選択内容に応じた情報紹介やメッセージ出力をおこなうことができ、とても使いやすい関数です。
一度使ってみると、イメージがつかめると思いますので、ぜひ、簡単なサンプルプログラムを作成して、試してみてください。
おすすめ
バックエンドエンジニアおすすめ!PHPの学習サイト9つ
PHPの本・参考書の評判