在PHP中有效地测试多个值

时间:2012-07-19 17:19:39

标签: php

好的,所以我需要测试一些可能的匹配。它可以等于 A B ,所以测试它的明显方法是这样的:

if($val=="A"||$val="B"){
    echo "yup";
}

我只是想知道他们是否更容易测试值而不重复每个值的变量,就像这样(我知道这不起作用):

if($val==("A"||"B")){
    echo "yuppers";
}

这样的事情可能吗?

3 个答案:

答案 0 :(得分:7)

您可以使用in_array

$array = array('A','B','other values');
if(in_array($val, $array)){
    // value is in array
}else {
    // invalid value
}

答案 1 :(得分:3)

您可以使用in_array

if (in_array($val, array('A', 'B'))) {
    echo 'yuppest';
}

答案 2 :(得分:2)

您可以在数组中添加“A”和“B”并使用in_array方法,但这绝对不比$val=="A" || $val =="B"

更有效