switch文は、開き波括弧{
をコロン(:
)、閉じ波括弧}
をendswitch;
に変更することができる。
switch文内で、PHPブロックとHTMLブロックを分けない際の、endswitch;
の使い方とサンプルについて。
PHPブロックとHTMLブロックを分ける際のendswitch;
は、、endswitch(PHPブロックとHTMLブロック)のページへ。
使い方
基本
switch ( 変数もしくは式 ):
case 値A:
変数もしくは式の値が、値Aと等しいときの処理
break;
case 値B:
変数もしくは式の値が、値Bと等しいときの処理
break;
case 値C:
変数もしくは式の値が、値Cと等しいときの処理
break;
endswitch;
case 値A:
変数もしくは式の値が、値Aと等しいときの処理
break;
case 値B:
変数もしくは式の値が、値Bと等しいときの処理
break;
case 値C:
変数もしくは式の値が、値Cと等しいときの処理
break;
endswitch;
複数の値に対し同じ処理
switch ( 変数もしくは式 ):
case 値A:
case 値B:
case 値C:
変数もしくは式の値が、値A、値B、値Cのいづれかのときの処理
break;
case 値D:
case 値E:
変数もしくは式の値が、値D、値Eのいづれかのときの処理
break;
endswitch;
case 値A:
case 値B:
case 値C:
変数もしくは式の値が、値A、値B、値Cのいづれかのときの処理
break;
case 値D:
case 値E:
変数もしくは式の値が、値D、値Eのいづれかのときの処理
break;
endswitch;
デフォルトの処理を指定
default文を使う。
switch ( 変数もしくは式 ):
case 値A:
変数もしくは式の値が、値Aと等しいときの処理
break;
case 値B:
変数もしくは式の値が、値Bと等しいときの処理
break;
default:
変数もしくは式の値が、値Aでも値Bでもないときの処理
break;
endswitch;
case 値A:
変数もしくは式の値が、値Aと等しいときの処理
break;
case 値B:
変数もしくは式の値が、値Bと等しいときの処理
break;
default:
変数もしくは式の値が、値Aでも値Bでもないときの処理
break;
endswitch;
サンプル
基本
<?php
$var = 1;
switch ( $var ):
case 0:
echo '$varの値が「0」のときの処理';
break;
case 1:
echo '$varの値が「1」のときの処理';
break;
case 2:
echo '$varの値が「2」のときの処理';
break;
endswitch;
?>
$var = 1;
switch ( $var ):
case 0:
echo '$varの値が「0」のときの処理';
break;
case 1:
echo '$varの値が「1」のときの処理';
break;
case 2:
echo '$varの値が「2」のときの処理';
break;
endswitch;
?>
↓↓↓出力結果↓↓↓
$varの値が「1」のときの処理
複数の値に対し同じ処理
<?php
$var = 'ギター';
switch ( $var ):
case 'サッカー':
case '野球':
case 'テニス':
echo '<p>スポーツは楽しいよね。</p>';
break;
case 'ピアノ':
case 'ギター':
case 'バイオリン':
echo '<p>私も音楽大好きです。</p>';
break;
endswitch;
?>
$var = 'ギター';
switch ( $var ):
case 'サッカー':
case '野球':
case 'テニス':
echo '<p>スポーツは楽しいよね。</p>';
break;
case 'ピアノ':
case 'ギター':
case 'バイオリン':
echo '<p>私も音楽大好きです。</p>';
break;
endswitch;
?>
↓↓↓出力結果↓↓↓
私も音楽大好きです。
デフォルトの処理を指定
<?php
$var = 5;
switch ( $var ):
case 0:
echo '$varの値が「0」のときの処理';
break;
case 1:
echo '$varの値が「1」のときの処理';
break;
case 2:
echo '$varの値が「2」のときの処理';
break;
default:
echo '$varの値が、「0、1、2」の何れでもないときの処理';
break;
endswitch;
?>
$var = 5;
switch ( $var ):
case 0:
echo '$varの値が「0」のときの処理';
break;
case 1:
echo '$varの値が「1」のときの処理';
break;
case 2:
echo '$varの値が「2」のときの処理';
break;
default:
echo '$varの値が、「0、1、2」の何れでもないときの処理';
break;
endswitch;
?>
↓↓↓出力結果↓↓↓
$varの値が、「0、1、2」の何れでもないときの処理