在字符串PHP中查找单词

时间:2012-08-07 07:01:35

标签: php string word boolean preg-match

如何检查字符串中是否有特定的工作?假设我有一个像这样的字符串

  

错误=名&安培;通过&安培;电子邮件

所以我想检查字符串中是否有姓名,通行证或/和电子邮件。我需要答案是布尔值,所以我可以在那里做一些事情。

5 个答案:

答案 0 :(得分:2)

<?php
$mystring = 'wrong=name&pass&email';
$findme   = 'name';
$pos = strpos($mystring, $findme);


if ($pos === false) {
echo "The string '$findme' was not found in the string '$mystring'";
} else {
echo "The string '$findme' was found in the string '$mystring'";
echo " and exists at position $pos";
}
?> 

答案 1 :(得分:1)

if ( stristr( $string, $string_im_looking_for) ){
     echo 'Yep!';
}

答案 2 :(得分:1)

使用strstr()

if (strstr($string,'pass'))
{
    echo"pass is here";
}

答案 3 :(得分:0)

您可以先爆炸字符串。像这样的东西;

$arrayOfWords = explode('&', $yourString);

然后循环遍历数组并检查isset。

答案 4 :(得分:0)

从您的示例的外观来看,您实际想要做的就是解析查询字符串,例如与parse_str

parse_str($string, $result);
if(isset($result['name']))
  // Do something

但是,如果字符串可能格式不正确等,我建议使用strpos,与strstr不同,而其他人则不需要创建新字符串。

// Note the `!==` - strpos may return `0`, meaning the word is there at
// the 0th position, however `0 == false` so the `if` statement would fail
// otherwise.
if(strpos($string, 'email') !== false)
  // Do something