php函数strstr strrchr substr stristr的区别
strstr strrchr substr stristr这四个字符串操作函数特别让人容易混淆,我经常用的是substr,strstr,基本上能满足我对字符串的操作。下面举一些例子,做个笔记,以后不要弄混了。
一,strstr和strcchr的区别
strstr 显示第一次找到,要查找的字符串,以及后面的字符串。
strrchr 显示最后一次找到,要查找的字符串,以及后面的字符串。
1.<?php
2.$email = 'zhangying@51yip.com@test.com';
3.
4.$domain = strstr($email, '@');
5.echo "strstr 测试结果 $domain<br>";
6.
7.$domain = strrchr($email, '@');
8.echo "strrchr 测试结果 $domain<br>";
9.?>
10.结果如下:
11.strstr 测试结果 @51yip.com@test.com
12.strrchr 测试结果 @test.com
<?php
$email = 'zhangying@51yip.com@test.com';
$domain = strstr($email, '@');
echo "strstr 测试结果 $domain<br>";
$domain = strrchr($email, '@');
echo "strrchr 测试结果 $domain<br>";
?>
结果如下:
strstr 测试结果 @51yip.com@test.com
strrchr 测试结果 @test.com二,strstr和stristr的区别
strstr是大小写敏感的。
stristr是大小写不敏感的。
1.<?php
2.$email = 'zhangYing@51yip.com';
3.
4.$domain = strstr($email, 'y');
5.echo "strstr 测试结果 $domain<br>";
6.
7.$domain = stristr($email, 'y');
8.echo "stristr 测试结果 $domain<br>";
9.?>
10.结果如下:
11.strstr 测试结果 yip.com
12.stristr 测试结果 Ying@51yip.com
<?php
$email = 'zhangYing@51yip.com';
$domain = strstr($email, 'y');
echo "strstr 测试结果 $domain<br>";
$domain = stristr($email, 'y');
echo "stristr 测试结果 $domain<br>";
?>
结果如下:
strstr 测试结果 yip.com
stristr 测试结果 Ying@51yip.com三,strstr和substr的区别
strstr是匹配后截取。
substr是不匹配,根据起始位置,进行截取。
1.<?php
2.$email = 'zhangYing@51yip.com';
3.
4.$domain = strstr($email, 'y');
5.echo "strstr 测试结果 $domain<br>";
6.
7.$domain = substr($email,-7);
8.echo "substr 测试结果 $domain<br>";
9.?>
10.结果如下午:
11.strstr 测试结果 yip.com
12.substr 测试结果 yip.com
<?php
$email = 'zhangYing@51yip.com';
$domain = strstr($email, 'y');
echo "strstr 测试结果 $domain<br>";
$domain = substr($email,-7);
echo "substr 测试结果 $domain<br>";
?>
结果如下午:
strstr 测试结果 yip.com
substr 测试结果 yip.com把这个几个字符串截取函数搞明白了,在开发时可以省不少事。