substr截取中文字符时会出现乱码
2016-12-20 00:00
176 查看
摘要: 使用substr截取中文字符时会出现乱码,这是因为substr是按字节来截取的
使用substr截取中文字符时会出现乱码,这是因为substr是按字节来截取的。即UTF-8编码的中文,使用substr截取,只会截取1/3个中文,当然出现乱码了。
一.string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )
encoding 参数为字符编码。如果省略,则使用内部字符编码。
返回值:
mb_substr() 函数根据 start 和 length 参数返回 str 中指定的部分
echo mb_substr('中国你好',0,2,‘UTF-8’); 字符串必须为UTF-8编码格式
如果不清楚字符串的编码格式的话,可以用mb_detect_encoding检查:
$encoding = mb_detect_encoding($string, array("ASCII",'UTF-8′,"GB2312′,"GBK",'BIG5′));
使用substr截取中文字符时会出现乱码,这是因为substr是按字节来截取的。即UTF-8编码的中文,使用substr截取,只会截取1/3个中文,当然出现乱码了。
一.string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )
encoding 参数为字符编码。如果省略,则使用内部字符编码。
返回值:
mb_substr() 函数根据 start 和 length 参数返回 str 中指定的部分
echo mb_substr('中国你好',0,2,‘UTF-8’); 字符串必须为UTF-8编码格式
如果不清楚字符串的编码格式的话,可以用mb_detect_encoding检查:
$encoding = mb_detect_encoding($string, array("ASCII",'UTF-8′,"GB2312′,"GBK",'BIG5′));
相关文章推荐
- PHP substr截取中文字符出现乱码的问题解疑
- PHP截取中文字符无乱码 mb_substr()
- php中截取中文字符会出现乱码的问题
- substr截取中文字符出现乱码的解决办法
- substr截取中文字符出现乱码的解决方案
- php 解决substr()截取中文字符乱码问题
- PHP函数substr截取中文字符出现乱码的解决办法
- PHP函数substr截取中文字符出现乱码的解决办法
- PHP substr截取中文字符出现乱码的问题解疑
- PHP substr截取中文字符出现乱码的具体解决办法
- Web_PHP_PHPsubstr截取中文字符出现乱码解决;
- PHP函数substr截取中文字符出现乱码的解决办法
- php 解决substr()截取中文字符乱码问题
- PHP中使用substr()截取字符串出现中文乱码问题该怎么办
- 分析substr来截取UTF-8中文字符串出现乱码问题
- PHP截取中文字符出现乱码的具体解决办法
- PHP substr()截取字符串时,中文出现乱码的问题解决【转】
- smarty截取中文字符乱码问题的解决支持utf-8编码
- PHP使用mb_substr()解决中文字符串截取乱码问题
- smarty截取中文字符乱码问题?gb2312-------utf-8