環境
Laravel v9.5.1 (PHP v8.1.3)
breakを省略する場合
PHPのswitch文ではbreak
を省略するとフォールスルーという書き方になり、case文の処理が続けて実行される。
CASE文の終わりにbreak文を書かない場合は、PHPは 次のCASE文を実行しつづけます。
$value = '1';
switch ($value) {
case '1':
echo '承認待ち';
case '2':
echo '承認済み';
case '3':
echo '承認拒否';
}
実行結果(見づらいので改行した)
承認待ち
承認済み
承認拒否
break省略しない場合
一つめのbreak
で抜けるため「承認待ち」しか表示されない。
$value = '1';
switch ($value) {
case '1':
echo '承認待ち';
break;
case '2':
echo '承認済み';
break;
case '3':
echo '承認拒否';
break;
}
実行結果
承認待ち