php中对字符串的操作函数有很多,比如替换指定的字符串,计算字符串的长度等,而这篇文章就说一说在PHP中如何查找一指定的字符串,在另一串字符串中出现的位置,并区分大小写,和不区分大小写。
PHP strrpos() 函数
strrpos():函数查找字符串在另一字符串中最后一次出现的位置(区分大小写)。
语法:
strrpos(string,find,start)
参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。
例:PHP 查找字符串在另一字符串中最后出现的位置
示例1:
$str = 'http://www.feiniaomy.com';
var_dump(strrpos($str,'feiniaomy.com'));
//打印结果:int(11)
示例2:
$str = 'mochu.feiniao.feiniaomochu';
var_dump(strrpos($str,'mochu'));
//打印结果:int(21)
示例3:
$str = 'http://www.feiniaomy.com';
var_dump(strrpos($str,'FEINIAOMY.COM'));
//打印结果:bool(false)
示例4:
$str = 'http://www.feiniaomy.com';
var_dump(strrpos($str,'mochu'));
//打印结果:bool(false)
注意:strrpos() 查找时是区分大小写的,如果查找不到返回 false ,找到后要查找的字符串第一个字符的所在位置,从0开始计数,而不是从1开始
PHP strripos()函数
strripos() 函数查找字符串在另一字符串中最后一次出现的位置(不区分大小写)
语法:
strripos(string,find,start)
参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。
例:PHP 查找字符串在另一字符串中最后出现的位置
示例1:
$str = 'feimochuniao.feiniaomochu';
var_dump(strripos($str,'mochu'));
//打印结果:int(20)
示例2:
$str = 'feimochuniao.feiniaomochu';
var_dump(strripos($str,'MOCHU'));
//打印结果:int(20)
示例3:
$str = 'feimochuniao.feiniaomochu';
var_dump(strripos($str,'LIST'));
//打印结果:bool(false)
注意:
1、示例1与示例2的比较中,虽然查找的字符串大小写不同,但打印出的结果都是相同的
2、如果 strripos() 函数查找不到字符串,则会返回 false
PHP strpos()函数
strpos():函数查找字符串在另一字符串中第一次出现的位置(区分大小写)。
语法:
strpos(string,find,start)
参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。
例:PHP 查找字符串在另一字符串中第一次出现的位置,区分大小写
示例1:
$str = 'feimochuniao.feiniaomochu';
var_dump(strrpos($str,'mochu'));
//打印结果:int(20)
示例2:
$str = 'feimochuniao.feiniaomochu';
var_dump(strrpos($str,'Mochu'));
//打结果:bool(false)
注意:利用 strpos() 函数查找时是区分大小写的,并且如果查找不到的情况下会返回 false,查到后返回第一个字符串的位置,从0开始计算
php stripos()函数
stripos():函数查找字符串在另一字符串中第一次出现的位置(不区分大小写)。
语法:
stripos(string,find,start)
参数:
string:必需。规定被搜索的字符串。
find:必需。规定要查找的字符。
start:可选。规定开始搜索的位置。
例:PHP 查找字符串在另一字符串中第一次出现的位置,不区分大小写
示例1:
$str = 'feimochuniao.feiniaomochu';
var_dump(stripos($str,'Mochu'));
//打印结果:int(3)
示例2:
$str = 'feimochuniao.feiniaomochu';
var_dump(stripos($str,'mochu'));
//打印结果:int(3)
示例3:
$str = 'feimochuniao.feiniaomochu';
var_dump(stripos($str,'list'));
//打印结果:bool(false)
注意:
1、对比示例1与示例2的代码,要搜索的字符串虽然相同,但大小写不同,stripos() 函数给出同样的结果
2、如果未搜索到字符串 stripos() 函数返回 false
总结:
strripos(),strrpos(),strpos(),stripos() 四个函数虽然都可以在另一字符串中查找当前字符串出现的位置,但一定要注意以下几点区别
1、strripos(),strrpos() 查找字符串最后一次出现的位置,strripos()函数不区分大小写,strrpos()函数区分大小写
2、strpos(),stripos() 查找 字符串第一次出现的位置,strpos()区分大小写,stripos() 不区分大小写