利用PHP函数计算中英文字符串长度的方法


Posted in PHP onNovember 11, 2014

本文实例讲述了利用PHP函数计算中英文字符串长度的方法。分享给大家供大家参考。具体实现方法如下:

一般来说大家知道英文字符占一个字节,而中文字符gbk占两个字符,utf8占三个字符,很多人印象中php计算字符串长度就是strlen()函数,其实不然,它计算的是字节的长度而非字符的长度,那么如何获取一个字符串中字符的长度呢?还有有mb_strlen().

具体代码如下:

echo $str = 'PHP点点通'; 
echo strlen($str); //3*1+3*3=12  

echo mb_strlen($str, 'gb2312'); //3*1+3*2=9  

echo mb_strlen($str, 'utf-8'); //6

可恶的是,mb系列的函数并不是PHP核心函数,默认没有开启的,还有一个超简单的方法,通过正则将字符串分解为字符个体,计算字符的个数即为字符串的长度,代码如下:
<?php  

function _strlen($str)  

{  

        preg_match_all("/./us", $str, $matches);  

        return count(current($matches));  

}  

  

echo _strlen("PHP点点通");  //6  

?>

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
用IE远程创建Mysql数据库的简易程序
Oct 09 PHP
通过ICQ网关发送手机短信的PHP源程序
Oct 09 PHP
以文本方式上传二进制文件的PHP程序
Oct 09 PHP
模仿OSO的论坛(五)
Oct 09 PHP
php 按指定元素值去除数组元素的实现方法
Nov 04 PHP
php的memcache类分享(memcache队列)
Mar 26 PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
Dec 18 PHP
PHP生成随机密码方法汇总
Aug 27 PHP
PHP Callable强制指定回调类型的方法
Aug 30 PHP
Yii框架数据模型的验证规则rules()被执行的方法
Dec 02 PHP
详谈php中 strtr 和 str_replace 的效率问题
May 14 PHP
PHP框架实现WebSocket在线聊天通讯系统
Nov 21 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
Nov 11 #PHP
PHP基于imap获取邮件实例
Nov 11 #PHP
php无限极分类递归排序实现方法
Nov 11 #PHP
php实现压缩多个CSS与JS文件的方法
Nov 11 #PHP
详谈PHP文件目录基础操作
Nov 11 #PHP
浅谈PHP解析URL函数parse_url和parse_str
Nov 11 #PHP
php 魔术方法详解
Nov 11 #PHP
You might like
php使用exec shell命令注入的方法讲解
2013/11/12 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
2015/03/18 PHP
php生成二维码
2015/08/10 PHP
php curl优化下载微信头像的方法总结
2018/09/07 PHP
PHP操作路由器实现方法示例
2019/04/27 PHP
页面js遇到乱码问题的解决方法是和无法转码的情况
2014/04/30 Javascript
node.js使用npm 安装插件时提示install Error: ENOENT报错的解决方法
2014/11/20 Javascript
nodejs实现的一个简单聊天室功能分享
2014/12/06 NodeJs
Javascript中的作用域和上下文深入理解
2015/07/03 Javascript
理解JavaScript的变量的入门教程
2015/07/07 Javascript
javascript常用的方法整理
2015/08/20 Javascript
Position属性之relative用法
2015/12/14 Javascript
详解基于mpvue的小程序markdown适配解决方案
2018/05/08 Javascript
JavaScript实现京东购物放大镜和选项卡效果的方法分析
2018/07/05 Javascript
JavaScript之实现一个简单的Vue示例
2019/01/17 Javascript
微信小程序开发注意指南和优化实践(小结)
2019/06/21 Javascript
在vue-cli中引入lodash.js并使用详解
2019/11/13 Javascript
Vue router安装及使用方法解析
2020/12/02 Vue.js
Python进行数据提取的方法总结
2016/08/22 Python
python如何拆分含有多种分隔符的字符串
2018/03/20 Python
python版飞机大战代码分享
2018/11/20 Python
Python学习笔记之读取文件、OS模块、异常处理、with as语法示例
2019/06/04 Python
python检查目录文件权限并修改目录文件权限的操作
2020/03/11 Python
Pycharm操作Git及GitHub的步骤详解
2020/10/27 Python
CSS3实现点击放大的动画实例代码
2017/02/27 HTML / CSS
公司营业员的工作总结自我评价
2013/10/05 职场文书
移动通信专业自荐信范文
2013/11/12 职场文书
人力资源管理专业自荐书范文
2014/02/10 职场文书
购房协议书范本
2014/04/11 职场文书
药品业务员岗位职责
2014/04/17 职场文书
幼儿园安全责任书范本
2014/07/24 职场文书
教师批评与自我批评(群众路线)
2014/10/15 职场文书
2015教师年度考核评语
2015/03/25 职场文书
幼儿园家长反馈意见
2015/06/03 职场文书
岁月神偷观后感
2015/06/11 职场文书
Anaconda安装pytorch和paddle的方法步骤
2022/04/03 Python