高分求一个判断字符长度的函数,要支持utf8格式的。

lanbor 2005-11-25 09:59:35
我想要一个utf8_strlen()函数,支持utf8的,汉字长度算2,英文算1。例如:
utf8_strlen('a哈哈') = 5; 。

好像php的mb_*类函数把utf里每个字符都算做1个长度。请高手帮忙。谢谢啦!!
...全文
120 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gdj 2005-11-28
  • 打赏
  • 举报
回复
strlen('a哈哈')就=5了……
pswdf 2005-11-28
  • 打赏
  • 举报
回复
你在gb2312下截取,然后再转成utf-8不就可以了
lanbor 2005-11-25
  • 打赏
  • 举报
回复
哦,不用了,我已经知道怎么做了,用这两条就可以搞定:

$s = mb_substr($str,$i,1,'utf8');
$curr_length += ord($s) > 127 ? 2 : 1;

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧