substr字符串截取,mb_substr函数汉字截取,strchr函数strstr函数特殊字符截取,字符串截取获取
substr函数
描述:实现截取字符串
语法:string substr(string $string,int $start [, int $length ])
说明:如果省略length,则返回从start至字符结尾之间的字符串;如果start或length为负数,则倒数。
举例:
<?php
$str = "123456789";
echo substr($str , 0 , 3); // 123
echo substr($str , 3 , 3); // 456
echo substr($str , -1); // 9
echo substr($str , -2); // 89
echo substr($str , -3, 1); // 7
echo substr($str , 0, -1); // 12345678
echo substr($str , 2, -1); // 345678
echo substr($str , 4, -4); // 5
echo substr($str , -3, -1); // 78
?>
mb_substr函数
描述:实现截取字符串
语法:string mb_substr(string $str,int $start[, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )
$str 要获取字符串的目标字符串(字符串起始位置为0)
$start,$str中要使用的第一个字符的位置
$length,获取的子字符串的长度(注意不是结束位置)
$encoding,可指定字符编码(一般用于处理中文字符时使用)
举例:
<?php
$str = '我们都是龙的传人';
echo mb_substr($str, 0, 3); //我们都
echo mb_substr($str, 0, 9); //我们都是龙的传人
echo mb_substr($str, 0, 3, 'utf-8'); //我们都
?>
strstr函数(strchr和strstr相同)
描述:查找字符串在另一个字符串中第一次出现的位置,并返回从该位置到字符串结尾的所有字符,如果没找到则返回 FALSE。
语法:string strstr ( string string, string needle )
提示:该函数对大小写敏感。如需进行大小写不敏感的查找,请使用 stristr() 。
string 要处理的字符串
needle 要查找的字符串,如果是数字,则搜索匹配数字 ASCII 值的字符
<?php
$email = 'user@5idev.com';
echo strstr($email, '@'); // 输出 @5idev.com
echo strstr($email, 5); // 啥也没有
echo strstr($email, 100); // dev.com
$str="AAA|BBB|CCC";
echo strrchr($str, "|");
?>
结合 substr() 函数便可以实现 截取某个最后出现的字符后面的所有内容:
<?php
$str="AAA|BBB|CCC";
echo substr(strrchr($str, "|"), 1); // CCC
?>
扩展:访问字符串中的单个字符(适合占用单个字节的字符串)
<?php
$string = 'abcde';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // e
?>