可変整数があり、その値がある値よりも大きく、別の値よりも小さい場合、別のことをしたいとします。この切り替えの目的は、基本的に の値に基づいて異なる結果を送信すること$chance
です。これはゲーム用であるため、最終的には多くのケースが発生します。
switch ($chance)
{
case ($chance < 15):
echo"strike<br>";
case ($chance < 15 && $chance > 50):
echo"Ball<br>";
break;
case ($chance < 50 && $chance > 100):
echo"Single<br>";
break;
case ($chance <= 150 && $chance >= 100):
echo"double<br>";
break;
case ($chance <= 175 && $chance >= 151):
echo"triple<br>";
break;
case ($chance > 200 && $chance > 175):
echo"Ground Rule Double<br>";
break;
case ($chance < 200):
echo"Home Run<br>";
break;
}
今、switch ステートメントで条件を使用できると言われましたが、使用すべきではないとも言われました。誰を信じていいのかわからない。
私が知っていることは、現在、この switch ステートメントが意図したとおりに機能しないということです。構文エラーは発生しませんが、ランダムなエコーが返されます。これは、チャンスが 100 の場合に発生し、ホームラン エコーが発生します。わからない。
一連の関数で同じことができることはわかっていますがif
、同じ結果を得ることができれば、コードの長さに大きな違いが生じるでしょう。
私は次のようなことができると思います
case 1:
echo this
case 2:
echo that
etc etc
2か300に当たるまでですが、できれば避けたいです。