php中
mb_substr($str,$start,$len,$encoding)用于中文字符串的截取,在相应的编码页面输入相应的$encoding
mb_strlen($str,$encodding)用于获取中文字符串的长度,包含多字节的字符算成一个。
GBK编码截取示例
复制代码代码如下:
$str = '我是谁'; //gbk编码的字符串
echo mb_substr($str, 0, 1, 'gbk'); //输出 我
mb_substr方法比substr多一个参数,用来指定字符串编码。
utf-8编码截取示例
[code]
$str = '我abc是谁'; //utf-8编码的字符串
echo mb_substr($str, 0, 2, 'utf-8'); //输出 我a
[/code
中英混合也完全没有问题。
友情提示
使用的时候要注意php文件的编码,和网页显示时的编码。
使用这个mb_substr方法要事先知道字符串的编码,如果不知道编码,就需要判断,mbstring库还提供了mb_check_encoding来检验字符串编码,但还不完善。
mb_check_encoding($str,$encoding);成功是返回true,失败时返回false;
php中文字符串的截取 其中ord($str)>127(因为中文字符的acsii码的范围是128(即0x80-0xfe)-254)