我怎么能检查字符串是否只与另一个字符串匹配

时间:2017-06-09 07:52:24

标签: javascript php jquery

我实际上是网络开发的初学者。

我的实际情况有问题。

例如:

$rooms = 10;

在我的代码中,我检查$ rooms是否等于1,0或10所以:

if(strpos($rooms, '1')){echo 1;}
if(strpos($rooms, '0')){echo 0};
if(strpos($rooms, '10')){echo 10;}

我的结果:

1
0
10

我的条件匹配1,0和10,其中我只需要匹配数字10

我怎样才能进入第三个条件?

THX

7 个答案:

答案 0 :(得分:1)

使用if($rooms=='10'){echo 10;}检查它是否相等

答案 1 :(得分:1)

您可以使用正则表达式执行此操作,并使用\b字边界

包围该单词
  

的preg_match("〜\ bMures \ b〜",$字符串)

示例:

$rooms = '10';
if ( preg_match("~\b10\b~",$rooms) )
   echo "matched";
else
   echo "no match";

答案 2 :(得分:1)

你可以从php documentation看到strpos只是给你一个字符串中子字符串的索引。

如果你想使用比较字符串函数来使用字符串:

if (strcmp($var1, $var2) == 0) echo 'we are equal';

Here你应该查看字符串比较的文档。

答案 3 :(得分:1)

将它与" ==="进行比较,但我建议采用另一种方法以提高可读性:使用switch语句。这在将来进行更多比较时特别有用。

switch ($rooms) {
    case '0':
        echo "0";
        break;
    case '1':
        echo "1";
        break;
    case '10':
        echo "10";
        break;
}

答案 4 :(得分:0)

您可以使用in_array()(严格/非严格模式作为第三个参数),例如

$arr = array(1,0,10);
var_dump(in_array(0,$arr));
var_dump(in_array(22,$arr));
var_dump(in_array(10,$arr));
var_dump(in_array(1,$arr));

答案 5 :(得分:0)

使用类似的东西

$rooms === ('your number') ? echo '(your number)' : echo '(else)';

用你喜欢的任何数字改变'你的号码'。 如果条件不满足,用你想要的任何东西改变echo'(else)' 或者只是在结肠后留下“没有任何事情发生”

答案 6 :(得分:0)

if(strpos($rooms, '10')>= 0){echo 10;}
elseif(strpos($rooms, '1')>= 0){echo 1;}
elseif(strpos($rooms, '0')>= 0){echo 0;}