【PHP】解决 php 截取字符串中文乱码问题

来源:互联网 发布:如何下载旧版软件 编辑:程序博客网 时间:2024/05/19 23:25

    有时候我们需要截取一些中英文混杂的字符串,比如要显示新闻的标题,如果标题过长,我们就截取前面的15个字,后面用...显示

    用 php 的 substr 来截取的话,有时候就会出现乱码现象,因为 substr 是截取英文字符串的,如果偏巧第 15 个字符为汉字的话,那末就相当于把一个汉字给切为2半了,那这时肯定会出现乱码

    其实解决方法也很简单:

    1> php.ini 中开启大字符集,支持多字符集之间的转换的扩展

extension=php_mbstring.dll

    2> 使用 mb_substr() 函数

mb_substr( $str, 0, 15, 'utf-8' );

    这样就能有效的解决 php 截取字符串中文乱码问题

补充:还可以使用 iconv_substr() 函数

iconv_substr($str, 0, 12, 'GB2312');