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


Posted in PHP onApril 12, 2018

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

strpos() 函数判断字符串中是否包含某字符串 https://3water.com/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('3water.com','3water') !== false){ 
 echo '包含3water'; 
}else{
 echo '不包含3water'; 
}

实例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 引用是个坏习惯
Mar 12 PHP
发款php蜘蛛统计插件只要有mysql就可用
Oct 12 PHP
php页面缓存ob系列函数介绍
Oct 18 PHP
php/js获取客户端mac地址的实现代码
Jul 08 PHP
php实现俄罗斯乘法实例
Mar 07 PHP
php内嵌函数用法实例
Mar 20 PHP
YII使用url组件美化管理的方法
Dec 28 PHP
Joomla简单判断用户是否登录的方法
May 04 PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
Feb 04 PHP
Yii2框架可逆加密简单实现方法
Aug 25 PHP
PHP的RSA加密解密方法以及开发接口使用
Feb 11 PHP
thinkPHP框架实现生成条形码的方法示例
Jun 06 PHP
ThinkPHP框架使用redirect实现页面重定向的方法实例分析
Apr 12 #PHP
PHP实现的mongoDB数据库操作类完整实例
Apr 10 #PHP
PHP实现的简单组词算法示例
Apr 10 #PHP
PHP实现的大文件切割与合并功能示例
Apr 10 #PHP
PHP实现分布式memcache设置web集群session同步的方法
Apr 10 #PHP
PHP实现Redis单据锁以及防止并发重复写入
Apr 10 #PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
Apr 09 #PHP
You might like
Cannot modify header information错误解决方法
2008/10/08 PHP
POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)
2010/10/12 PHP
PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式
2012/04/09 PHP
php文件下载处理方法分析
2015/04/22 PHP
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
2019/10/22 PHP
laravel 解决后端无法获取到前端Post过来的值问题
2019/10/22 PHP
基于php解决json_encode中文UNICODE转码问题
2020/11/10 PHP
Javascript-Mozilla和IE中的一个函数直接量的问题分析
2007/08/12 Javascript
在页面加载完成后通过jquery给多个span赋值
2014/05/21 Javascript
SuperSlide2实现图片滚动特效
2014/06/20 Javascript
JQuery中$(document)是什么意思有什么作用
2014/07/21 Javascript
jQuery源码解读之hasClass()方法分析
2015/02/20 Javascript
JS中使用FormData上传文件、图片的方法
2016/08/07 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
JavaScript用JSONP跨域请求数据实例详解
2017/01/06 Javascript
简单实现jQuery手风琴效果
2017/08/18 jQuery
jQuery实现的页面详情展开收起功能示例
2018/06/11 jQuery
nodejs用gulp管理前端文件方法
2018/06/24 NodeJs
4 种滚动吸顶实现方式的比较
2019/04/09 Javascript
vue实现路由懒加载及组件懒加载的方式
2019/06/11 Javascript
全面解析Vue中的$nextTick
2020/12/24 Vue.js
Python数据类型详解(三)元祖:tuple
2016/05/08 Python
Python三种遍历文件目录的方法实例代码
2018/01/19 Python
python删除本地夹里重复文件的方法
2020/11/19 Python
Python反射和内置方法重写操作详解
2018/08/27 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
anaconda如何查看并管理python环境
2019/07/05 Python
Python爬取腾讯视频评论的思路详解
2019/12/19 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
2020/04/21 Python
Python中return函数返回值实例用法
2020/11/19 Python
上课迟到检讨书
2014/01/19 职场文书
安全保证书范文
2014/04/29 职场文书
党员批评与自我批评发言材料
2014/10/14 职场文书
戒赌保证书
2015/05/11 职场文书
Spring Data JPA框架Repository自定义实现
2022/04/28 Java/Android