2012-05-06 13 views
2

変数に対して複数のチェックを行う必要があります。私は "Equals"の例を見たことがあります:w3schools。 しかし、それらは2つの異なる変数です。今私は持っている:1つの変数に対する複数の比較演算子?

if ($color == 'blue') 
{ 
//do something 
} 

しかし、私は$色の複数のチェックにする必要があります。例えば、それが赤または緑に等しい場合。これはどう書かれますか?

答えて

8

ような単純な:他のいくつかのオプションがあります

if ($color == 'blue' || $color == 'red' || $color == 'green') { 
    //do something 
} 

in_array機能を使用して

switch ($color) { 
    case 'blue': 
    case 'red': 
    case 'green': 
     //do something 
} 

以上の複雑な:switch演算子を使用して

$colors = array('blue', 'red', 'green'); 
if (in_array($color, $colors)) { 
    //do something 
} 
+0

あなたの回答とリンクをありがとう! –

+0

ようこそ。いいコーディングがあります;) – VisioN

+0

ありがとう;)。また、もし私が約10種類の色を持っていたら、どちらの方法が最も速く/最小限のサーバーに依存するのでしょうか? –

2

は、スイッチ・ステートメントを使用します。あなたはすべての色で同じことをしたい場合には

switch($color) 
{ 
    case "blue": 
     // do blue stuff 
     break; 
    case "yellow": 
     // do yellow stuff 
     break; 
    case "red": 
     // do red stuff 
     break; 
    default: 
     // if everything else fails... 
} 

、ちょうど||(ブールまたは)演算子を使用します。

if ($color == "blue" || $color == "red" || $color == "yellow") 
{ 
    // do stuff 
} 
+0

お返事ありがとうございます;) –

0

また、preg_matchと一緒に行くこともできます。これは残忍かもしれませんが、私はそれが非常に速いと確信しています!

$color = "blue"; 
$pattern = "/^red|blue|yellow$/"; 
if (preg_match($pattern,$color)) { 
    // Do something nice here! 
} 
関連する問題