こんにちは。エンジニア大学編集部です。
本章ではswitch文について学んでいきます。
switch文とは
switch文とは、if else ifによる分岐が多く複雑になってしまう場合に使用する、if文に代わる条件分岐の記述法です。
くじ引きを例に以下のような条件と結果があったとします。
- 変数lotteryに1が代入されている場合「1等です」と出力する
- 変数lotteryに2が代入されている場合「2等です」と出力する
- 変数lotteryに3が代入されている場合「3等です」と出力する
- 変数lotteryにそれ以外が代入されている場合「ハズレです」と出力する
これをif文で記述する場合、if… else if… else if…ととても冗長なコードになってしまってコードが読みづらくなってしまいます。
そんなときにswitch文を使用します。
上記のくじ引きの条件をswitch文で記述すると以下のようになります。
上から順に説明していきます。
変数lotteryには2が格納されています。
「switch」でswitch文の宣言をしています。その後の()内に式を記述しています。
今回の場合、lotteryの中に代入されている値によって処理を変えるので、()内にはlotteryを記述しています。
次行の「case」は「〜の場合」という意味で、「case 1:」は「lotteryの値が1の場合」という意味になります。
次行のechoは、前行のcaseでtrueが返ってきた場合に実行されます。
「break;」は「caseの中のプログラムはここで終わりです」という意味になります。
break;
先程出てきたbreak;はbreak命令といい、これは非常に大事な役割を果たします。
break命令は現在のブロックから脱出するための命令です。
break命令がないと、後ろに続くcaseブロックが続けて実行されてしまいます。
各caseには必ずbreak;を記述するように気をつけましょう。
まとめ
本章ではswitch文について学びました。
本章にて、PHPの条件分岐学習は終わりです!
これまで学習した内容を活かして様々な状況に対応できるプログラムを書いていきましょう。
次章からは新しいチャプターへ移行します。
チャプター3からは配列について学んでいきます。
配列を学ぶことで、コードをより綺麗に書くことができます。しっかり学んでいきましょう!
コメントを残す