学员服务
安防工程师培训 安防工程师培训 安防工程师培训 安防工程师培训
您现在的位置:首页 > 编程园地 > PHP编程
substr截取中方出现乱码,自定义函数截取解决
时间:2010-07-09  来源:本站原创  作者:yuge   浏览次数:

先看一下为什么substr截取中文会出现乱码,因为中文占两个字节位,然后我们的文字中间有英文和数字,即使我们取偶数子串也不能解决乱码问题(我们不能保证,每次中间英文或数字字数是一样的)。
然后介绍两个php函数:
substr(string,start,length)
参数一是字符串,参数二是起始位置,参数三取子字符串长度
ord(string)
参数一是字符串,它的作用是函数返回字符串第一个字符的 ASCII 值。
下面是自定义函数sub_str
function sub_str($text,$length)
{
for   ($i=0;$i <$length;$i++)
{
$chr = substr($text,$i,1);
if   (ord($chr)   >   0x80)//字符是中文
{
$length++;    //是中文的话长度就增加
$i++;
}
}
$str   =   substr($text,   0,   $length);  
return   $str;
}

最终依靠这个自定义函数解决substr截取中文字符出现乱码问题。

版权归原作者所有,内容仅供参考学习,不得用于商业用途。
会员中心 | 缴费方式 | 在线咨询 | 投诉建议 | 友情链接 | 技术资讯 | 下载中心 | 产品推荐 | 解决方案
北京市朝阳区龙腾畅晓培训学校(北京龙腾畅晓科技有限公司全资举办) 版权所有
电话:010-84804842  邮箱:web@95px.com
地址:北京市朝阳区北苑路40号六号楼二层  邮编:100012
网站备案号:京ICP备17008362号-1

京公网安备 11010502032312号