php中对字符串的操作函数有很多,比如替换指定的字符串,计算字符串的长度等,而这篇文章就说一说在PHP中如何查找一指定的字符串,在另一串字符串中出现的位置,并区分大小写,和不区分大小写。
php 查找字符串在另一字符串中出现的位置 - 图1

PHP strrpos() 函数

strrpos():函数查找字符串在另一字符串中最后一次出现的位置(区分大小写)。
语法:

  1. strrpos(string,find,start)

参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。

例:PHP 查找字符串在另一字符串中最后出现的位置

示例1:

  1. $str = 'http://www.feiniaomy.com';
  2. var_dump(strrpos($str,'feiniaomy.com'));
  3. //打印结果:int(11)

示例2:

  1. $str = 'mochu.feiniao.feiniaomochu';
  2. var_dump(strrpos($str,'mochu'));
  3. //打印结果:int(21)

示例3:

  1. $str = 'http://www.feiniaomy.com';
  2. var_dump(strrpos($str,'FEINIAOMY.COM'));
  3. //打印结果:bool(false)

示例4:

  1. $str = 'http://www.feiniaomy.com';
  2. var_dump(strrpos($str,'mochu'));
  3. //打印结果:bool(false)

注意:strrpos() 查找时是区分大小写的,如果查找不到返回 false ,找到后要查找的字符串第一个字符的所在位置,从0开始计数,而不是从1开始

PHP strripos()函数

strripos() 函数查找字符串在另一字符串中最后一次出现的位置(不区分大小写)
语法:

  1. strripos(string,find,start)

参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。
例:PHP 查找字符串在另一字符串中最后出现的位置
示例1:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(strripos($str,'mochu'));
  3. //打印结果:int(20)

示例2:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(strripos($str,'MOCHU'));
  3. //打印结果:int(20)

示例3:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(strripos($str,'LIST'));
  3. //打印结果:bool(false)

注意:
1、示例1与示例2的比较中,虽然查找的字符串大小写不同,但打印出的结果都是相同的
2、如果 strripos() 函数查找不到字符串,则会返回 false

PHP strpos()函数

strpos():函数查找字符串在另一字符串中第一次出现的位置(区分大小写)。
语法:

  1. strpos(string,find,start)

参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。
例:PHP 查找字符串在另一字符串中第一次出现的位置,区分大小写
示例1:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(strrpos($str,'mochu'));
  3. //打印结果:int(20)

示例2:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(strrpos($str,'Mochu'));
  3. //打结果:bool(false)

注意:利用 strpos() 函数查找时是区分大小写的,并且如果查找不到的情况下会返回 false,查到后返回第一个字符串的位置,从0开始计算

php stripos()函数

stripos():函数查找字符串在另一字符串中第一次出现的位置(不区分大小写)。
语法:

  1. stripos(string,find,start)

参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。
例:PHP 查找字符串在另一字符串中第一次出现的位置,不区分大小写
示例1:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(stripos($str,'Mochu'));
  3. //打印结果:int(3)

示例2:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(stripos($str,'mochu'));
  3. //打印结果:int(3)

示例3:

  1. $str = 'feimochuniao.feiniaomochu';
  2. var_dump(stripos($str,'list'));
  3. //打印结果:bool(false)

注意:
1、对比示例1与示例2的代码,要搜索的字符串虽然相同,但大小写不同,stripos() 函数给出同样的结果
2、如果未搜索到字符串 stripos() 函数返回 false

总结:

strripos(),strrpos(),strpos(),stripos() 四个函数虽然都可以在另一字符串中查找当前字符串出现的位置,但一定要注意以下几点区别
1、strripos(),strrpos() 查找字符串最后一次出现的位置,strripos()函数不区分大小写,strrpos()函数区分大小写
2、strpos(),stripos() 查找 字符串第一次出现的位置,strpos()区分大小写,stripos() 不区分大小写


文章来源:https://www.feiniaomy.com/post/364.html