php 字符串中是否包含指定字符串的多种方法

 更新时间:2018年04月12日 21:13:49   投稿:mdxy-dxy  
这篇文章主要介绍了php 字符串中是否包含指定字符串的多种方法,经过脚本之家小编测试完全没有问题

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

strpos() 函数判断字符串中是否包含某字符串 https://www.jb51.net/article/154741.htm

1. strstr

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

代码如下:

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

2. stristr

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

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

3. strpos

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

实例1

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

实例2

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

4. explode

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

function checkstr($str){
 $needle ='a';//判断是否包含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面向对象程序设计之对象生成方法,简单介绍了php常见对象生成模式并结合实例形式分析了php对象生成的单例模式、工厂模式、原形模式等概念与实现技巧,需要的朋友可以参考下
    2016-12-12
  • PHP模块化安装教程

    PHP模块化安装教程

    这篇文章主要介绍了PHP模块化安装的方法,较为详细的分析了php模块化安装的步骤与相关注意事项,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • PHP高并发和大流量解决方案整理

    PHP高并发和大流量解决方案整理

    在本篇文章里小编给大家分享的是一篇关于PHP高并发和大流量解决方案内容,有兴趣的朋友们可以参考下。
    2019-12-12
  • php5.5使用PHPMailer-5.2发送邮件的完整步骤

    php5.5使用PHPMailer-5.2发送邮件的完整步骤

    PHPMailer已经更新了很多版本了,本教程只针对老版本。下面这篇文章主要给大家介绍了关于php5.5使用PHPMailer-5.2发送邮件的完整步骤,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-10-10
  • PHP中使用SimpleXML检查XML文件结构实例

    PHP中使用SimpleXML检查XML文件结构实例

    这篇文章主要介绍了PHP中使用SimpleXML检查XML文件结构实例,本文讲解使用SimpleXML来检查一个XML文件是否符合规范的方法,需要的朋友可以参考下
    2015-01-01
  • PHP中SESSION的注销与清除

    PHP中SESSION的注销与清除

    本文给大家分享的是PHP中SESSION的注销与清除的方法和示例,非常的实用,有需要的小伙伴可以参考下。
    2015-04-04
  • php一个文件搞定微信jssdk配置

    php一个文件搞定微信jssdk配置

    这篇文章主要为大家详细介绍了php如何利用一个文件搞定微信jssdk配置,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • php实现微信公众号无限群发

    php实现微信公众号无限群发

    本文给大家分享的是php实现的利用微信的客服接口进行各类消息的无限群发,思路非常巧妙,有需要的小伙伴可以参考下
    2015-10-10
  • 必须收藏的php实用代码片段

    必须收藏的php实用代码片段

    这篇文章主要为大家又分享了必须收藏的23个php实用代码片段,帮助大家更好地学习php程序设计,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • 解决文件名解压后乱码的问题 将文件名进行转码的代码

    解决文件名解压后乱码的问题 将文件名进行转码的代码

    中文win32下,文件名使用GBK编码 Linux下,文件名使用UTF-8编码 解决文件名解压后乱码的问题,使用将文件名进行转码
    2012-01-01

最新评论