single
switch-case文
メニューを表示するにはスワイプしてください
switch文は、PHPにおいて強力なツールであり、式の値に基づいて複数の選択肢の中から1つのコードブロックを実行することができます。変数が複数の異なる値を取る可能性があり、その値に応じて異なるコードを実行したい場合に特に有用です。
構文
PHPにおけるswitch文の基本構文は次のとおりです:
switch (expression) {
case value1:
// Code to be executed if expression equals value1
break;
case value2:
// Code to be executed if expression equals value2
break;
// You can have any number of case statements
default:
// Code to be executed if expression doesn't match any case
}
- Expression: 比較対象となる値;
Casevalue: 各caseはexpressionがこの値と一致するかを判定;breakキーワードは現在のcaseを終了し、switch文から抜けるために使用。breakがない場合、次のcaseも続けて実行される(フォールスルー);defaultcaseは、他のいずれのcaseにも一致しない場合に実行される。省略可能だが、予期しない値への対応のため推奨。
次に、プレイヤーの選択に基づいてじゃんけんの結果を判定する、より短い例を見てみましょう:
main.php
1234567891011121314151617<?php $playerChoice = "rock"; switch ($playerChoice) { case "rock": echo "You chose rock. Rock smashes scissors!"; break; case "paper": echo "You chose paper. Paper covers rock!"; break; case "scissors": echo "You chose scissors. Scissors cuts paper!"; break; default: echo "Invalid choice. Please choose rock, paper, or scissors."; } ?>
この例では、$playerChoiceが"rock"であるため、出力は"You chose rock. Rock smashes scissors!"となります。switch文は各caseを順にチェックし、一致するものが見つかると対応するコードブロックが実行されます。break文によって、次のcaseへのフォールスルーが防がれます。
defaultケース
defaultケースは予期しない値への対応に便利です。指定されたcaseのいずれにも一致しない場合の受け皿として機能します:
main.php
1234567891011121314151617<?php $playerChoice = "lizard"; switch ($playerChoice) { case "rock": echo "You chose rock. Rock smashes scissors!"; break; case "paper": echo "You chose paper. Paper covers rock!"; break; case "scissors": echo "You chose scissors. Scissors cuts paper!"; break; default: echo "Invalid choice. Please choose rock, paper, or scissors."; } ?>
"lizard" は有効な選択肢ではないため、出力は "Invalid choice. Please choose rock, paper, or scissors" となります。
switch 文は、1つの式を複数の値と比較する場合に、複数の if-else if-else 文よりも簡潔で読みやすい代替手段です。複数の条件をコンパクトかつ分かりやすく処理するのに特に便利です。break を使用してフォールスルーを防ぎ、予期しない値を処理するために default ケースを含めることを忘れないでください。
スワイプしてコーディングを開始
変数 $grade の値に基づいて適切なメッセージを表示するために、switch 文を使用してコードの空欄を埋めてください。
解答
フィードバックありがとうございます!
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください