在PHP中统计汉字个数怎样做,代码是什么
这篇文章主要介绍“在PHP中统计汉字个数怎样做,代码是什么”,有一些人在在PHP中统计汉字个数怎样做,代码是什么的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。
“在PHP中统计汉字个数怎样做,代码是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业技术相关的知识可以关注博信网站,小编每天都会为大家更新不同的知识。
1、PHP 中如何正确统计中文字数?这个是困扰我很久的问题,PHP 中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了strlen,mb_strlen,mb_strwidth这个三个函数去测试统计字符串的长度,看看把中文算成几个字节:
echo strlen("你好ABC") . ""; # 输出 9 echo mb_strlen("你好ABC", 'UTF-8') . ""; # 输出 5 echo mb_strwidth("你好ABC") . ""; #输出 7
从上面的测试,我们可以看出:strlen把中文字符算成3个字节,mb_strlen不管
</script>中文还是英文,都算1个字节,而mb_strwidth则把中文算成2个字节,所以mb_strwidth才是我们想要的:中文 2 个字节,英文 1 个字节。
同样截取字符串也建议使用mb_strimwidth,也是按照中文 2 个字节,英文 1 个字节方式计算之后的,并且如果字数超过截取的要求,这个函数还可以在最后面自动添加‘…'。
mb_strimwidth($post_excerpt,0,240,'...','utf-8');
注意,最后添加‘utf-8'编码参数,可以避免中文截取乱码的问题。
2、
<script type="text/javascript"> var len = $('#Form-field-Course-description').text().length; $('#Form-field-Course-description-group').append('<div id="txtNum" style="position: absolute;right: -50px;bottom: 18px;"></div>'); var len=$('#Form-field-Course-description').val().length; $('#txtNum').text(len+"/500"); $('#Form-field-Course-description').bind('input propertychange', function() { var val=$(this).val(); var len=val.length; if(len>500){ len=500; $(this).val(val.substring(0,500)); } $('#txtNum').text(len+"/500"); }); </script>
根据Octobercms后台update获取textarea长度,通过input,propertychange事件监听事件
总结
“在PHP中统计汉字个数怎样做,代码是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业技术相关的知识可以关注博信网站,小编每天都会为大家更新不同的知识。
版权声明
本文仅代表作者观点,不代表博信信息网立场。