php如何判断一个字符串是否包含另一个字符串

我觉得最简单的就是:(用这种最好,StrPos效率最高)

strpos($a, $b) !== false 如果$a 中存在 $b,则为 true ,否则为 false。

用 !== false (或者 === false) 的原因是如果 $b 正好位于$a的开始部分,那么该函数会返回int(0),那么0是false,但$b确实位于$a中,所以要用 !== 判断一下类型,要确保是严格的 false。

其它的还有 PHP 原生支持的函数,如 strstr(),stristr() 等,直接判断就可以了。

------------------------------------------------------------------------------------------------

PHP语言是一个功能强大的嵌入式HTML脚本语言,它的易用性让许多程序员选择使用。PHP判断字符串的包含,可以使用PHP的内置函数strstr,strpos,stristr直接进行判断.也可以通过explode函数的作用写一个判断函数。

1. strstr: 返回一个从被判断字符开始到结束的字符串,如果没有返回值,则不包含

代码如下:

< ?php   

/*如手册上的举例*/   

$email = '[email protected]';   

$domain = strstr($email, '@');   

echo $domain; 
// prints @example.com   

?> 

2. stristr: 它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写.

3. strpos: 返回boolean值.FALSE和TRUE不用多说.用 “===”进行判断.strpos在执行速度上都比以上两个函数快,另外strpos有一个参数指定判断的位置,但是默认为空.意思是判断整个字符串.缺点是对中文的支持不好. 

PHP判断字符串的包含代码如下:

$str= 'abc';   

$needle= 'a';   

$pos = strpos($str, $needle);  

4. 用explode进行判断 

PHP判断字符串的包含代码如下:

function checkstr($str){   

  $needle = "a";//判断是否包含a这个字符   

  $tmparray = explode($needle,$str);   

  if(count($tmparray)>1){   

      return true;   

   } else{   

     return false;   

  }   

}

目前有:1条评论

  1. admin
    2017-03-23 15:51:43
    if(strpos($name,'/') !== false ){//若有多个别名
    $namearr = explode('/',$name);
    $name = $namearr[0];
    }

留下脚印,证明你来过。发表评论:

*

*

分享:

支付宝

微信