欢迎各位兄弟 发布技术文章
这里的技术是共享的
先看这样一段代码吧(先决条件是:字符编码为UTF-8):
<? $str = '懂PHP的都知道strlen与mb_strlen是求字符串长度的函数'; echo strlen($str)'.<br />'.mb_strlen($str,'utf-8'); ?> |
运行上述代码,返回值如下:
66
34
怎么样?strlen中,中文是三个字节的长度,英文则是一个字节的长度!mb_strlen中,都被计算为一字节的长度!所以,我们有时候用substr来截取UTF-8中文字符串的时候,经常会出现乱码,就是这个原因了!
下面提供一个截取UTF-8字符串的函数:
function cutstr($sourcestr,$cutlength){ |
使用例子:
<? |