PHPSwitchCase でデフォルトを使用
-
PHP
switch
ケース -
PHP の
switch-case
ステートメントでdefault
ステートメントを使用する -
PHP の
switch-case
でbreak
ステートメントなしでdefault
ステートメントを使用する
PHP で switchcase ステートメントを紹介します。スイッチケースのさまざまなシナリオと、コードがケースを処理する方法について説明します。次に、PHP の switchcase ステートメントでの break
ステートメントとその使用法を紹介します。
その前に一致するケースが存在する場合、default
ケースが実行されるかどうかを確認します。このメソッドでは、結果を確認するために break
ステートメントを削除します。
PHP switch
ケース
switch-case
ステートメントは条件付きであり、if-elseif-else
ステートメントの代替です。このステートメントは、正しい一致が見つかるまで変数をチェックし、一致したケースに従って実行します。switch
ステートメントを使用して変数をテストし、case
ステートメントを使用してテストするケースを指定できます。case ステートメントの後にコードを記述して、case が一致した場合にコードを実行します。
switch-case
ステートメントは、if-elseif-else
ステートメントと 1つの特徴的な点で異なります。if-elseif-else
ステートメントは、条件が真になった後に唯一のコードを実行し、条件付きテストを中止します。ただし、switch case ステートメントでは、すべてのケースがテストされ、対応する各コードが実行されます。問題を取り除くために、break
ステートメントを使用します。ケースが一致し、対応するコードが実行されると、実行は break
ステートメントになり、条件付きチェックは中止されます。したがって、各ケースの最後に break
ステートメントを記述します。
たとえば、変数 $favfood
を作成し、値 pizza
を割り当てます。括弧内の変数 $favfood
を使用して switch
ステートメントを記述します。switch ステートメント内に case
ステートメントを記述し、case momo
を case "momo":
として指定します。値の後のコロンを見逃さないでください。ケースの下にある echo
ステートメントを使用して、Your favorite food is momo!
というメッセージを表示します。メッセージを表示した後、break
ステートメントを記述します。同様に、momo
の場合と同じように spaghetti
と pizza
のケースを記述し、それに応じてメッセージを表示し、それぞれのケースの break
ステートメントを記述します。
以下の例は、Your favorite food is pizza!
というメッセージを表示します。変数 $favfood
が値 pizza
を保持しているためです。まず、ケース momo
をテストします。一致しないため、実行はケース spaghetti
に向かって移動します。このケースも一致しませんが、ピザ
のケースは一致します。次に、対応するメッセージを表示し、break
ステートメントを実行します。break
ステートメントは、switch case ステートメント全体を終了し、それ以上のコードが実行されないようにします。
サンプルコード:
# php 7.*
<?php
$favfood = "pizza";
switch ($favfood) {
case "momo":
echo "Your favorite food is momo!";
break;
case "spaghetti":
echo "Your favorite food is spaghetti!";
break;
case "pizza":
echo "Your favorite food is pizza!";
break;
case "burger":
echo "Your favorite food is burger!";
break;
}
?>
出力:
Your favorite color is pizza!
PHP の switch-case
ステートメントで default
ステートメントを使用する
switch-case
ステートメントの default
ステートメントを使用して、上記で指定されたケースを満たさないケースを示すことができます。つまり、どのケースにも一致しない場合、default
ステートメントが実行されます。すべてのケースの最後に default
ステートメントを記述します。上記の例では、デフォルトのケースはありません。上記のケースのいずれも一致しない場合、コードは何も出力しません。したがって、default
ステートメントは残りのケースに対応します。
最初のコード例を変更して、default
ステートメントの使用法を説明できます。たとえば、値 spaghetti
を変数 $favfood
に割り当てます。ケース spaghetti
のコードブロックを削除し、デフォルトのステートメントを追加します。default
ステートメント内に、We could not find your favorite food
というメッセージを表示します。メッセージの後に break
ステートメントを記述します。
以下の例では、指定されたケースのいずれも一致しません。したがって、コントロールは default
ステートメントに到達します。次に、対応するメッセージを表示します。spaghetti
のコードブロックを削除しなかった場合、デフォルトのステートメントは実行されませんでした。Your favorite food is spaghetti!
というメッセージが表示されます。break
ステートメントは、ケースが一致した場合、条件付きチェックを中止します。
サンプルコード:
#php 7.x
<?php
$favfood = "spaghetti";
switch ($favfood) {
case "momo":
echo "Your favorite food is momo!";
break;
case "pizza":
echo "Your favorite food is pizza!";
break;
case "burger":
echo "Your favorite food is burger!";
break;
default:
echo "We could not find your favorite food";
break;
}
?>
出力:
We could not find your favorite food
PHP の switch-case
で break
ステートメントなしで default
ステートメントを使用する
break
ステートメントを使用せずに、switch ケースで default
ステートメントを使用して、default
ブロックがその前に一致するケースを実行するかどうかを確認できます。デモ用に上記のサンプルコードを少し変更できます。たとえば、$favfood
を momo
の値に割り当てます。momo
、pizza
、burger
、default
のケースとコードブロックをそれぞれ記述します。どのコードブロックにも break
ステートメントを記述しないでください。
以下の例では、実行はすべてのケースを通過し、すべてのメッセージを表示します。以前に一致するケースがあったとしても、デフォルトのブロックは、一致するケースが続くブロックとともに実行されます。これは、break
ステートメントを省略したためです。
サンプルコード:
#php 7.x
<?php
$favfood = "momo";
switch ($favfood) {
case "momo":
echo "Your favorite food is momo!"."<br>";
case "pizza":
echo "Your favorite food is pizza!"."<br>";
case "burger":
echo "Your favorite food is burger!"."<br>";
default:
echo "We could not find your favorite food"."<br>";
}
?>
出力:
Your favorite food is momo!
Your favorite food is pizza!
Your favorite food is burger!
We could not find your favorite food.
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn