条件式の値によって、実行する処理を振り分けるという構造
▼結果
/demo/switch.html
▼結果
/demo/switch2.html
$narita = 1;//条件式の値は「1」
$haneda = "b";
$kobe = 2;
switch($narita){
default ://条件式の値がいずれのケースにも当てはまらなかった場合に実行する処理。必ずしも書く必要はない。他caseとの順番も関係ない
echo "DEFAULT";
break;//「switch文」から抜ける
case "a":
echo "A";
break;//「switch文」から抜ける
case "b":
echo "B";
break;//「switch文」から抜ける
case "c":
echo "C";
break;//「switch文」から抜ける
}
echo "
";
switch($haneda){
case "a":
echo "A
";
case "b":
echo "B
";//「break;」を処理の最後に置かないと、以降全ての処理が実行される
case "c":
echo "C
";
default ://条件式の値がいずれのケースにも当てはまらなかった場合に実行する処理。必ずしも書く必要はない
echo "DEFAULT";
}
echo "
";
switch($kobe){
default ://条件式の値がいずれのケースにも当てはまらなかった場合に実行する処理。必ずしも書く必要はない
echo "default";
break;//「switch文」から抜ける
case 1://「:(コロン)」の後ろには必ずしも処理を記述する必要はない。処理の記述が無い場合は、それ以降「break;」が現れるまでの全ての処理を実行する
case 2:
case 3://条件式の値が「1」か「2」か「3」の何れかなら
echo "123";//「123」を出力
break;//「switch文」から抜ける
case "a":
case "b":
case "c"://「"a"」か「"b"」か「"c"」の何れかなら
echo "ABC";//「ABC」を出力
}
▼結果
/demo/switch.html
$i = $j = 0;
while(++$i){//++$i 前置加算子 「$i」に「1」を足して、その結果を返す
echo $i, " ";
switch($i){
default:
break;
case 10:
break 2;
}
}
echo "
";
while(++$j){
echo $j, " ";
switch($j){
default:
continue;
case 10:
break 2;
}
}
▼結果
/demo/switch2.html