$str="探访韩国坡州志愿军墓地 墓碑上刻\"无名人\""; var_dump(substr($str,0,48)); var_dump(mb_substr($str,0,48)); 首先使用substr和mb_substr结果出现同样的效果! 如下输出: string(48) "探访韩国坡州志愿军墓地 墓碑上刻"�" string(48) "探访韩国坡州志愿军墓地 墓碑上刻"�" 记忆中mb_substr是按字符个数来的,不应该和substr一样。 看了下php版本, 5.4.16,mbstring扩展也装了。<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 然后又改了一下: $str="探访韩国坡州志愿军墓地 墓碑上刻\"无名人\""; var_dump(substr($str,0,48)); var_dump(mb_substr($str,0,17,'utf-8')); 最后输出:
string '探访韩国坡州志愿军墓地 墓碑上刻"�' (length=48)
string '探访韩国坡州志愿军墓地 墓碑上刻"' (length=47)记得以前截取中文没有用到utf-8.难道是版本变了,现在必须加上。还是自己记错了!!
thinkphp的html页面中使用
<volist name='alists' id='vo'>
<li><a href="{:U('Action/showsome',array('id'=>$key))}">*{$vo|mb_substr=0,20,'utf-8'}...</a></li>
</volist>
mb_substr使用中出现的一点问题
最新推荐文章于 2021-03-24 00:11:53 发布