【 PHP 】PHP8に入門してみた 82日目 PHPの基本 ( 制御構文 switch )

PHP8技術者認定初級試験 が始まるようなので 試験に向けて (できるだけ)勉強しようと思います! 使用する書籍は独習PHP 第4版(山田 祥寛)|翔泳社の本 (shoeisha.co.jp) となります。

制御構文

switch

if命令は便利ですが、if~elseif~elseif~elseif~elseと分岐がたくさんある場合には読みづらくなることがあります。

そんなときはswitch命令を使います。

switch命令も他の言語仕様とだいたい同じです。
case句に評価したい値を記述します。
default句は必須ではありません。またif命令で使うelseのように最後に記述する必要もありません。

break命令がないと止まれません(笑
ここについても他の言語と同様ですね。

本書では「必須」とありますがPHPの言語仕様では「フォールスルー」といって、breakを省略することが許されてるので「言語仕様的には必須ではない」と思います。

PHPswitchで注意したいのがcase句に記述した値との比較方法です。
===の厳密な比較ではなく==のデータ型について寛容な演算子が使われます。
数値文字列は数値に変換されたりして思わぬ挙動をするかもしれません。

メモ

breakがないと脱出できないのでcase句を無視して次のステートメントの処理を行います。

PHPPHP

Posted by raika@blog