深圳全飞鸿

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 631|回复: 1
打印 上一主题 下一主题

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

[复制链接]

104

主题

171

帖子

1177

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1177
跳转到指定楼层
楼主
发表于 2019-8-4 13:36:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1. strstr

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

代码如下:
  1. <?php
  2. $email = 'user@example.com';
  3. $domain = strstr($email, '@');
  4. echo $domain;
  5. // prints @example.com
  6. ?>
复制代码


2. stristr

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

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

3. strpos

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

实例1

  1. if(strpos('www.jb51.net','nagomes') !== false){
  2. echo '包含nagomes';
  3. }else{
  4. echo '不包含nagomes';
  5. }
复制代码


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


4. explode

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

  1. function checkstr($str){
  2. $needle ='a';//判断是否包含a这个字符
  3. $tmparray = explode($needle,$str);
  4. if(count($tmparray)>1){
  5. return true;
  6. } else{
  7. return false;
  8. }
  9. }
复制代码



5、substr

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

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


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

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

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

  1. function check_str($str, $substr)
  2. {
  3. $nums=substr_count($str,$substr);
  4. if ($nums>=1)
  5. {
  6.   return true;
  7. }
  8. else
  9. {
  10.   return false;
  11. }
  12. }
复制代码

超级简单!
回复

使用道具 举报

104

主题

171

帖子

1177

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1177
沙发
 楼主| 发表于 2019-8-5 22:10:48 | 只看该作者
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|nagomes  

GMT+8, 2025-5-5 03:11 , Processed in 0.028019 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表