教学之友,学习之友。

站长教学网

当前位置: 站长教学网 > 网站编程 > PHP教程 >

php函数mb_strimwidth截断中文乱码问题

时间:2012-12-08 15:57来源:未知 作者:ken 点击:

php函数mb_strimwidth是用来获取指定的宽度截断字符串。但在使用mb_strimwidth函数来实现文章截断的时候,如果结尾处恰巧是中文字符的话,有可能会发生乱码现象。今天在我单位的网站就发生了截断中文乱码问题。解决的方法如下。

第一种解决的方法:开启mb_string extension

如果您有权限更改apache配置,可以将mb_string extension设置为on。

第二种解决的方法:设置字符集

这里需要先说明下mb_strimwidth的使用方法

mb_strimwidth(string $str,int $start,int $width[,string $trimmarker[,string $encoding]])

参数说明站长教学网 eduyo.com

$str //指定字符串

$start //指定从何处开始截取

$width //截取文字的宽度

$trimmarker //超过$width数字后显示的字符串

举个例子,我调用的php函数是这样的:

<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 370, "...");?>

解决中文截断乱码问题只需将以上代码加上UTF-8参数即可:

<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 370, "...",'utf-8');?>

这样就解决了WordPress中mb_strimwidth截断中文字符产生乱码的问题。

(责任编辑:ken)
TAG标签: php 函数 乱码 mb_strimwidt
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
注册登录:不允许匿名留言,登录后留言无需输入验证码。
栏目列表
最新内容