欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

容易混淆的四个php文本函数strstr strrchr substr stristr

程序员文章站 2022-06-17 13:46:40
...
php 中这四个函数常常让人混淆,在这里做点笔记。


1、strstr

strstr — 显示第一次找到,要查找的字符串,以及后面的字符串。大小写敏感。


代码清单:


[php]
//strstr函数
$email = 'liruxing1715@sina.com@qq.com';
$domain = strstr($email, '@');
echo "strstr 测试结果:{$domain}
";
$domain = strstr($email, '@', true);
echo "strstr 测试结果:{$domain}
";
/*
测试结果为:
strstr 测试结果:@sina.com@qq.com
strstr 测试结果:liruxing1715
*/

//strstr函数
$email = 'liruxing1715@sina.com@qq.com';
$domain = strstr($email, '@');
echo "strstr 测试结果:{$domain}
";
$domain = strstr($email, '@', true);
echo "strstr 测试结果:{$domain}
";
/*
测试结果为:
strstr 测试结果:@sina.com@qq.com
strstr 测试结果:liruxing1715
*/注:如果要查找的字符串没有找到,那么返回 FALSE。


2、stristr

stristr — 功能和 strstr 函数一样,唯一不同的地方是大小写不明感。

3、strrchr

strrchr — 显示最后一次找到,要查找的字符串,以及后面的字符串。

代码清单:


[php]
//strrchr函数
$email = 'liruxing1715@sina.com@qq.com';
$domain = strrchr($email, '@');
echo "strrchr 测试结果:{$domain}
";
/*
测试结果为:
strrchr 测试结果:@qq.com
*/

//strrchr函数
$email = 'liruxing1715@sina.com@qq.com';
$domain = strrchr($email, '@');
echo "strrchr 测试结果:{$domain}
";
/*
测试结果为:
strrchr 测试结果:@qq.com
*/注:如果要查找的字符串没有找到,那么返回 FALSE。


4、substr

substr — 在一个字符串中,根据给出的长度进行字符截取。

格式:string substr ( string $string , int $start [, int $length ] )

参数介绍:

$string:要截取的字符串;

$start:要截取的开始位置,默认是从0开始的;如果 start 是负数,返回的字符串将从 $string 结尾处向前数第 $start 个字符开始;如果 string 的长度小于或等于 start,将返回 FALSE。

$length:截取的结束位置,如果第 $length 为空,那么返回从起始位置到结束。

代码清单:


[php]
//substr函数
$email = 'liruxing1715@sina.com@qq.com';
$domain = substr($email, 10);
echo "substr 测试结果:{$domain}
";
$domain = substr($email, 10, 5);
echo "substr 测试结果:{$domain}
";
$domain = substr($email, -5, 5); //字符串的最后一位为 -1
echo "substr 测试结果:{$domain}
";
/*
测试结果为:
substr 测试结果:15@sina.com@qq.com
substr 测试结果:15@si
substr 测试结果:q.com
*/

//substr函数
$email = 'liruxing1715@sina.com@qq.com';
$domain = substr($email, 10);
echo "substr 测试结果:{$domain}
";
$domain = substr($email, 10, 5);
echo "substr 测试结果:{$domain}
";
$domain = substr($email, -5, 5); //字符串的最后一位为 -1
echo "substr 测试结果:{$domain}
";
/*
测试结果为:
substr 测试结果:15@sina.com@qq.com
substr 测试结果:15@si
substr 测试结果:q.com
*/