PHPのswitchは緩やかな比較になるので使うべきではないと思ってるのですが使いどころはありますか?
1、処理が速い 2、可読性が高くなる
メリットとしてこれらを挙げる人がいますが
1についてはそう書いてる記事がたまにありますが、少なくとも以下のコードでは差はありませんでした。(version:7.0.22)
2については条件(1,2,3)が同じ列に並んでるため読みやすいようにも思えます。
(ただ分岐が複数ある時点で可読性がいいとは言えないと思うのですが。)
if文(緩やかな比較)
php
1<?php 2$startTime = microtime(true); 3for($i = 0; $i < 10000; $i++) { 4 if($i == 1) { 5 var_dump(1); 6 } elseif($i == 2) { 7 var_dump(2); 8 } elseif($i == 3) { 9 var_dump(3); 10 } else { 11 var_dump(4); 12 } 13} 14$endTime = microtime(true); 15var_dump($endTime - $startTime);
switch文
php
1<?php 2$startTime = microtime(true); 3for($i = 0; $i < 10000; $i++) { 4 switch ($i) { 5 case 1: 6 var_dump(1); 7 break; 8 case 2: 9 var_dump(2); 10 break; 11 case 3: 12 var_dump(3); 13 break; 14 default: 15 var_dump(4); 16 } 17} 18$endTime = microtime(true); 19var_dump($endTime - $startTime);
他にメリットなどがあれば教えてください。
よろしくお願いします。

回答6件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。