php简单统计中文个数的方法
之前的公司是做外贸的用到的都是英文所以统计的长度的时候是用strlen这个函数,一直也没有错误,但是现在统计中文的时候这个就出错了,现在做一下记录测试:
<?php
echo strlen("你好ABC") . "";
# 输出 9
echo mb_strlen("你好ABC", 'UTF-8') . "";
# 输出 5
echo mb_strwidth("你好ABC") . "";
#输出 7
?>
从上面的测试,我们可以看出:
strlen 把中文字符算成 3 个字节
mb_strlen 不管中文还是英文,都算 1 个字节
mb_strwidth 则把中文算成 2 个字节
所以长度统计的时候用mb_strlen这个函数