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 相关文章推荐
用libTemplate实现静态网页的生成
Oct 09 PHP
php trim 去除空字符的定义与语法介绍
May 31 PHP
PHP学习之正则表达式
Apr 17 PHP
如何利用PHP执行.SQL文件
Jul 05 PHP
php使用Session和文件统计在线人数
Jul 04 PHP
PHP运行模式汇总
Nov 06 PHP
PHP更安全的密码加密机制Bcrypt详解
Jun 18 PHP
phpcms配置列表页以及获得文章发布时间
Jul 04 PHP
使用PHP连接数据库_实现用户数据的增删改查的整体操作示例
Sep 01 PHP
PHP实现微信小程序用户授权的工具类示例
Mar 05 PHP
Yii使用EasyWechat实现小程序获取用户的openID的方法
Apr 29 PHP
PHPstorm启用自动换行的方法详解(IDE)
Sep 17 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
PHP 强制下载文件代码
2010/10/24 PHP
PHP include任意文件或URL介绍
2014/04/29 PHP
PHP将HTML转换成文本的实现代码
2015/01/21 PHP
PHP使用PDO操作数据库的乱码问题解决方法
2016/04/08 PHP
总结对比php中的多种序列化
2016/08/28 PHP
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
jquery HotKeys轻松搞定键盘事件代码
2008/08/30 Javascript
Jquery实现弹出层分享微博插件具备动画效果
2013/04/03 Javascript
在浏览器中实现图片粘贴的jQuery插件-- pasteimg使用指南
2014/12/29 Javascript
基于jQuery实现在线选座之高铁版
2015/08/24 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
js阻止冒泡和默认事件(默认行为)详解
2016/10/20 Javascript
Angular实现购物车计算示例代码
2017/02/21 Javascript
JavaScript循环_动力节点Java学院整理
2017/06/28 Javascript
解决Vue编译时写在style中的路径问题
2017/09/21 Javascript
webpack 模块热替换原理
2018/04/09 Javascript
jquery ajaxfileuplod 上传文件 essyui laoding 效果【防止重复上传文件】
2018/05/26 jQuery
react-native动态切换tab组件的方法
2018/07/07 Javascript
基于vue v-for 多层循环嵌套获取行数的方法
2018/09/26 Javascript
vue轻量级框架无法获取到vue对象解决方法
2019/05/12 Javascript
一文搞懂ES6中的Map和Set
2019/05/20 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
使用 js 简单的实现 bind、call 、aplly代码实例
2019/09/07 Javascript
vue进入页面时不在顶部,检测滚动返回顶部按钮问题及解决方法
2019/10/30 Javascript
[00:15]TI9观赛名额抽取
2019/07/10 DOTA
python打印9宫格、25宫格等奇数格 满足横竖斜相加和相等
2019/07/19 Python
Python 导入文件过程图解
2019/10/15 Python
HTML块级标签汇总(小篇)
2016/07/13 HTML / CSS
小学生我的梦想演讲稿
2014/08/21 职场文书
企业公益活动策划方案
2014/08/24 职场文书
综合素质自我评价评语
2015/03/06 职场文书
2015年组织委员工作总结
2015/04/23 职场文书
详解解Django 多对多表关系的三种创建方式
2021/08/23 Python
集英社今正式宣布 成立游戏公司“集英社Games”
2022/03/31 其他游戏
win11电脑关机鼠标灯还亮怎么解决? win11关机后鼠标灯还亮解决方法
2023/01/09 数码科技