php字符串的截取和查找,strstr、strpos、substr三个函数的用法
·
1、strstr
解释:strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。
$email = '1235698556@qq.com' ;
$domain = strstr ( $email , '@' );
echo $domain ; // 打印 @qq.com
$user = strstr ( $email , '@' , true ); // 从 PHP 5.3.0 起
echo $user ; // 打印 1235698556
2、strpos
strpos — 查找字符串在另一个字符串中首次出现的位置
mixed strops(string $haystack,$mixed $needle,[int $offset=0])
返回needle在haystack中首次出现的数字位置,从0开始查找,区分大小写。
参数:
haystack,在该字符串中进行查找。
needle,如果needle不是一个字符串,那么它将被转化为整型并被视为字符的顺序值。
offset,如果提供了此参数,搜索会从字符串该字符数的起始位置进行统计。和strrpos()、strripos()不一样,这个偏移量不能是负数。
<? php
echo strpos("You love php, I love php too!","php");
结果:9
?>
stripos()函数,与strpos()函数类似,不过其不区分大小写。
- stripos() - 查找字符串在另一字符串中第一次出现的位置(不区分大小写)
- strripos() - 查找字符串在另一字符串中最后一次出现的位置(不区分大小写)
- strrpos() - 查找字符串在另一字符串中最后一次出现的位置(区分大小写)
-
<?php echo strrpos("You love php, I love php too!","php"); 结果 21 ?>
3、substr
substr() 函数返回字符串的一部分
substr(string,start,length)
参数:
1,string 即你要截取的字符串
2,start 即要截取的开始位置(0表示从从前往后数 第一个字符开始,负数表示从从后往前数)
eg:start=1,表示从从前往后开始的第二个数开始截取,start=-1,表示从从后往前开始的第一(是第一不是第二哦)个数开始截取,
3,length 当为正数时,为需要截取的长度;当为负数时,即理解为去掉末尾的几个字符
eg:length=3,表示截取三个长度;length=-2,即为去掉末尾的两个字符
<?php
$rest = substr("abcdef", 0, -1); // 返回 "abcde"
$rest = substr("abcdef", 2, -1); // 返回 "cde"
$rest = substr("abcdef", 4, -4); // 返回 ""
$rest = substr("abcdef", -3, -1); // 返回 "de"
// 访问字符串中的单个字符
// 也可以使用中括号
$string = 'abcdef';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // f
//中文字符串的截取和获取长度 mb_substr()
$str = '我abc是谁'; //utf-8编码的字符串
echo mb_substr($str, 0, 2, 'utf-8'); //输出 我a
$str = '我是谁'; //gbk编码的字符串
echo mb_substr($str, 0, 1, 'gbk'); //输出 我
substr_replace($val['geval_frommembername'], '******', 2, 10);
?>
更多推荐
已为社区贡献4条内容
所有评论(0)