当前位置:首页 > 日记 > 正文

详细解释之间的差异和mb_strlenPHPstrlen函数

详细解释之间的差异和mb_strlenPHPstrlen函数
在PHP中有两个函数来计算字符串的个数。
一个是strlen,另mb_strlen;
首先看看手册中的定义。
strlen
获取字符串长度strlen
Int strlen(字符串的字符串)
返回给定字符串字符串的长度。

mb_strlen
国际mb_strlen(String str {,字符串的编码})
返回给定字符串字符串的长度。
编码参数是字符编码。如果省略省略,则使用内部字符编码。

这样,似乎除了mb_strlen可以通过特征码没有其他差异,以下是两者之间的差异的一个例子。
首先看看例子:
复制代码代码如下所示:
< / /测试PHP文件如果UTF8编码
$str =中国字1字;
回声strlen(str); / / 14。
回声mb_strlen($str,'utf8)。6;
回声mb_strlen($str,'gbk)。8;
回声mb_strlen($str,'gb2312)。10;
>

结果:在所有的计算中,汉字是UTF8 3 1字的长度,所以中国赛长度为3 * 4 + 2 = 14,在mb_strlen计算,选择的编码是UTF8,它将作为1计算长度的汉字,所以汉字长度为6。1。
这两个函数可以用来计算一系列中英文字符串的占有率(一个汉字为2,英语字符为1)。
复制代码代码如下:回声(strlen(str)+ mb_strlen($str,'utf8 ')) / 2;

例如,strlen(str)中国字1的值是14,和mb_strlen(str)的值是6,那么中国字1计算10入住。
复制代码代码如下:mb_internal_encoding(回声);

PHP内置的字符串长度的函数,函数,不正确处理中文字符串,它只有在字符串中的字节数。中文GB2312编码,所有的价值是2倍的汉字数量,并为UTF-8编码的中文,是差3倍(UTF-8编码,一个汉字占3个字节)。

mb_strlen功能的使用可以更好地解决这个问题,mb_strlen使用类似于所有,但它已指定字符编码的第二可选参数。例如,获取UTF-8字符串str的长度,你可以使用mb_strlen($str,'utf-8)。如果第二参数略,PHP的内部编码使用。内部编码可以由mb_internal_encoding获得()函数。
应该指出的是,mb_strlen不是PHP的核心功能。在Windows的使用,它是必要的以确保php_mbstring.dll加载在php.ini。这是确保推广= php_mbstring.dll存在不注明,否则未定义的函数就会出现问题。扩展需要在Linux下编译。

相关文章

如何学习linux的建议

如何学习linux的建议

学习,建议,电脑软件,linux,点评:有些朋友经常在Linux论坛上问一些问题,但大部分都是很基本的,只要你知道Linux的基础,你就可以轻松地解决这个问题,有些朋友经常接触Linux,想建立一个网站,而不考虑Linux的基础。 首先,从基金会 一些朋友常问的一些…

mysql将中文插入完整问号中的解题

mysql将中文插入完整问号中的解题

方法,中文,问号,完整,电脑软件,1、检查和MySQL修改my.ini配置文件 复制代码代码如下所示: 默认字符集= utf8 2。设置数据库以指定字符集。 复制代码代码如下所示: Create database mydb default character set utf8 collate utf8_general_ci;…

智能文档格式

智能文档格式

智能,文档格式,电脑软件,当您使用文档时,智能文档设计用于帮助您。一些文档类型,如表单和模板,也用作智能文档。 智能文档的整个使用过程中是特别有效的。例如,你的公司可能会有一个过程,填写员工年度评审表,你可以使用一个用微软Word模板。如果…

oracle数据库操作技能集

oracle数据库操作技能集

数据库,操作技能,集数,电脑软件,oracle,Oracle当然你看是Oracle数据库的操作技能。{编者注:}文件数据库,该公司首先想到的,一般将Oracle(即甲骨文公司),Oracle已经在数据库领域中的领先地位。Oracle关系数据库系统是一个受欢迎的关系型数据库管理…

什么样的角色,e-s0bic1.exe过程在e-

什么样的角色,e-s0bic1.exe过程在e-

过程,角色,电脑软件,exe,点评:e-s0bic1.exe是爱普生爱普生针式打印机驱动程序 进程文件:e-s0bic1或e-s0bic1.exe 进程名称:爱普生Stylus C62系列 过程类别:安全风险的过程 英文描述: e-s0bic1.exe属于爱普生针式打印机驱动程序。它保证它,它也…

在PHP的总结spl_autoload_register

在PHP的总结spl_autoload_register

函数,电脑软件,PHP,spl_autoload_register,spl_autoload_register (PHP > = 5 5.1.2) spl_autoload_register注册__autoload()函数 解释 布尔spl_autoload_register({回调autoload_function美元}) 该功能是在SPL __autoload函数堆栈注册。如果在…

Linux后缀名为Ko,O,A,所以,La

Linux后缀名为Ko,O,A,所以,La

后缀,电脑软件,Linux,La,Ko,注释:我们知道Linux下的文件类型不依赖于Windows的后缀名,而后缀名在Linux下是可有可无的。 但是为了区别起见,一些文件被添加到后缀名中: 1、Ko是内核对象的缩写,Linux 2.6内核使用的一个动态连接文件,Linux系统启动…

Linux实用程序的命令行详细信息

Linux实用程序的命令行详细信息

实用程序,命令行,详细信息,电脑软件,Linux,注释:这是一个真实的事实,许多IT专业人员使用Linux命令行,即使GUI是可用的。嘿,我们的第一个Linux命令行指南有超过5万次点击,但是让我们来听一个IT专家的理由。在这种情况下,我们听David Witham的原因,…

如何在快速快速的网络任务中恢复/

如何在快速快速的网络任务中恢复/

检索,网络,恢复,快速,如何在,问题: 我的xp是重装系统。Nora是一部保存在网络任务中的好电影。它已被发送到E盘。从360开始,在E盘中找到了大文件。开幕后,没有电影。电影肯定是在,但它不在那里,你是怎么恢复的谢谢你的解答。 答案uff1a 根据您…

wwsecure是wwsecure.exe-过程

wwsecure是wwsecure.exe-过程

过程,电脑软件,wwsecure,exe,评论:wwsecure.exe - wwsecure过程 进程文件:wwsecure或wwsecure.exe 进程名称:Webroot的窗口洗衣机 过程类别:安全风险的过程 英文描述: wwsecure.exe是与Webroot的窗口洗衣机中的应用相关的过程,窗口,也被称为对与…

什么过程kavmm过程查询kavmm.exe是

什么过程kavmm过程查询kavmm.exe是

查询,过程,电脑软件,kavmm,exe,评论:详细的介绍了kavmm.exe - kavmm过程 进程文件:kavmm或kavmm.exe 过程名称:卡巴斯基反病毒模块 过程类别:安全风险的过程 英文描述: kavmm.exe是与卡巴斯基反病毒专业5相关的过程。这,亲,它也被称为是非。 中…

wkqkpick.exe过程是怎样的

wkqkpick.exe过程是怎样的

的是,过程,是怎样,电脑软件,wkqkpick,评论:对wkqkpick.exe工艺简介 进程文件:wkqkpick或wkqkpick.exe 进程名称:WinZip:图标 过程类别:安全风险的过程 英文描述: wkqkpick.exe是WinZip:图标,提供快速访问,快速,它也被称为正确的方法。 中文参考: wkq…