首页 >后端开发 >php教程 >php 字符串中是否包含指定字符串

php 字符串中是否包含指定字符串

不言
不言原创
2018-04-19 14:01:362403浏览

这篇文章主要介绍了php 字符串中是否包含指定字符串的多种方法,经过测试完全没有问题

    编写程序的时候,经常要处理字符串,最基本就是字符串的查找,在php检测字符串中是否包含指定字符串可以使用正则,如果你对正则不了解,那么有几个函数可以为您提供方便。

    1. strstr

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。
该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。

    代码如下:


<?php
 /*如手册上的举例*/
 $email = &#39;user@example.com&#39;;
 $domain = strstr($email, &#39;@&#39;);
 echo $domain;
 // prints @example.com
?>


    2. stristr

    stristr() 函数查找字符串在另一个字符串中第一次出现的位置。
如果成功,则返回字符串的其余部分(从匹配点)。如果没有找到该字符串,则返回 false。

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

    3. strpos

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

    实例1


if(strpos(&#39;www.jb51.net&#39;,&#39;jb51&#39;) !== false){ 
 echo &#39;包含jb51&#39;; 
}else{
 echo &#39;不包含jb51&#39;; 
}


    实例2


$str= &#39;abc&#39;;
$needle= &#39;a&#39;;
$pos = strpos($str, $needle); // 返回第一次找到改字符串的位置,这里返回为1,若查不到则返回False


    4. explode

    用explode进行判断PHP判断字符串的包含代码如下:


function checkstr($str){
 $needle =&#39;a&#39;;//判断是否包含a这个字符
 $tmparray = explode($needle,$str);
 if(count($tmparray)>1){
  return true;
 } else{
  return false;
 }
}


    5、substr例如我们需要判断最后一个字符是不是制定字符


<?php
/*
$str1="<p>这是个winrar专用的dll然后下哦啊不错的dll文件,QlogWin32.dll</p>";
if(substr($str1,-8)==".dll</p>"){
echo substr($str1,0,-4);
}


    6、substr_count统计“子字符串”在“原始字符串中出现的次数”

    substr_count()函数本是一个小字符串在一个大字符串中出现的次数:
$number = substr_count(big_string, small_string);
正好今天需要一个查找字符串的函数,要实现判断字符串big_string是否包含字符串small_string,返回true或fasle;

    查了半天手册没有找到现成的函数,于是想到可以用substr_count函数来实现代码如下:


function check_str($str, $substr)
{
 $nums=substr_count($str,$substr);
  if ($nums>=1)
  {
   return true;
  }
  else
  {
   return false;
  }
}


    超级简单!

    具体的大家可以查找一下相关函数,进行高级应用。

相关推荐:

如何实现php字符串转换成数组

以上是php 字符串中是否包含指定字符串的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn