利用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 相关文章推荐
PHP个人网站架设连环讲(三)
Oct 09 PHP
PHP array_multisort() 函数的深入解析
Jun 20 PHP
CodeIgniter基本配置详细介绍
Nov 12 PHP
PHP return语句另类用法不止是在函数中
Sep 17 PHP
PHP-Java-Bridge使用笔记
Sep 22 PHP
php生成唯一数字id的方法汇总
Nov 18 PHP
php中final关键字用法分析
Dec 07 PHP
PHP使用Curl实现模拟登录及抓取数据功能示例
Apr 27 PHP
PHPExcel 修改已存在Excel的方法
May 03 PHP
Laravel中错误与异常处理的用法示例
Sep 16 PHP
thinkPHP框架实现的简单计算器示例
Dec 07 PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 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 数组的创建、调用和更新实现代码
2009/03/09 PHP
总结对比php中的多种序列化
2016/08/28 PHP
laravel5表单唯一验证的实例代码
2019/09/30 PHP
关于jquery css的使用介绍
2013/04/18 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
JavaScript数据结构和算法之二叉树详解
2015/02/11 Javascript
jquery UI Datepicker时间控件的使用方法(基础版)
2015/11/07 Javascript
jQuery Uploadify 上传插件出现Http Error 302 错误的解决办法
2015/12/12 Javascript
jquery 动态增加,减少input表单的简单方法(必看)
2016/10/12 Javascript
第一次接触神奇的前端框架vue.js
2016/12/01 Javascript
Echarts之悬浮框中的数据排序问题
2018/11/08 Javascript
vue里如何主动销毁keep-alive缓存的组件
2019/03/21 Javascript
vue 解决异步数据更新问题
2019/10/29 Javascript
基于JavaScript实现单例模式
2019/10/30 Javascript
王纯业的Python学习笔记 下载
2007/02/10 Python
Python中xrange与yield的用法实例分析
2017/12/26 Python
浅析python协程相关概念
2018/01/20 Python
Python PyQt4实现QQ抽屉效果
2018/04/20 Python
python selenium 获取标签的属性值、内容、状态方法
2018/06/22 Python
解决Python3.5+OpenCV3.2读取图像的问题
2018/12/05 Python
python 实现分页显示从es中获取的数据方法
2018/12/26 Python
Ubuntu下Python+Flask分分钟搭建自己的服务器教程
2019/11/19 Python
Django QuerySet查询集原理及代码实例
2020/06/13 Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
2020/06/23 Python
维珍澳洲航空官网:Virgin Australia
2017/09/08 全球购物
合作投资意向书
2014/04/01 职场文书
药剂专业求职信
2014/06/20 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
司机个人年终总结
2015/03/03 职场文书
雷锋的观后感
2015/06/10 职场文书
行政处罚事先告知书
2015/07/01 职场文书
导游词之河北邯郸
2019/09/12 职场文书
python字符串的多行输出的实例详解
2021/06/08 Python
flex弹性布局详解
2022/03/20 HTML / CSS
MySQL优化之慢日志查询
2022/06/10 MySQL
httpclient调用远程接口的方法
2022/08/14 Java/Android