php中输出中文字符乱码

WBOY
发布: 2016-06-23 14:26:57
原创
1383 人浏览过

foreach乱码

问题如下:
$load_list 是一个二维数组,将其中的user_name值取出前两个字符,后面用星号代替,但是遇到中文字符就出现乱码,设置header()函数,也没用,求解决办法,谢谢!
foreach($load_list as $k=>&$v){
 $temp=&$v['user_name'];

 for($i=0,$len=strlen($temp);$i if($i>1){
  $temp[$i]='*';
}
 }
}

截图如下:

回复讨论(解决方案)

你的代码只适用于单字节字符串,没有考虑到
中文 gbk 一个字符 2 个字节
中文 utf-8 一个字符 3 个字节

试试mb_substr函数

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!