php 字符串长度的解释
来源:互联网 发布:猎头 数据库 建立 编辑:程序博客网 时间:2024/05/06 21:57
在php中,函数strlen()返回字符串的长度,实际上是计算得到字符串所占的字节长度,在不同的编码下,字符串所占的字节长度是不同的。
列举几个常用的字符编码占用字节情况:
ASCII码:一个ASCII码就是一个字节
UTF8编码:一个英文字符占用一个字节,一个中文(含繁体)占用三个字节
Unicode编码:一个英文字符占用两个字节,一个中文(含繁体)占用两个字节
GBK和GBK2312编码:一个中文(含繁体)占用两个字节
符号:英文标点占一个字节,中文标点占两个字节
在php中计算字符串长度时会出现一些问题,strlen()函数并不能准确的返回字符串的实际长度,当字符串中含有中文,全角符号等情形时,
如:(当前文本为utf8编码)
<?phpecho strlen("字符串"); // 结果:9输出6,函数实际返回的不是字符串的字符长度,而是字符串所占的字节长度。在一些场景下,这并不符合我们的需求,为了解决这个问题,
我们可以使用mb_strlen()函数来协调字符串字符长度和字节长度,真实的计算出其字符长度。由于mb_strlen()不是php内置函数,需要我们
在php扩展功能模块中引入php_mbstring.dll,使用格式:int mb_strlen(string string_input, string encode);
示例:
echo mb_strlen('字符串','utf8');//3
补充:关于数据存储单位的简单说明
计算机数据存储基本单位是字节(Byte,简称B),数据传输的基本单位是“位”(bit,简称b),一个字节等于8位二进制,一个位表示一个0或1。
一个字节的取值范围为0~255 (2^8)。
1B=8b
1KB=1024B=2^10B
1MB=1024KB=2^20B
1GB=1024MB=2^30B
1TB=1024GB=2^40B
1PB=1024TB=2^50B
0 0
- php 字符串长度的解释
- php中常用的字符串长度函数strlen()与mb_strlen()实例解释
- php:获取字符串的长度
- PHP截取一定长度字符串的函数
- PHP 生成任意长度的随机字符串
- PHP字符串变量的长度限制问题
- php字符串的长度计算、截取、分割
- PHP不同字符集字符串长度的计算
- php mb_strlen 获取字符串的长度
- PHP中如何获取字符串的长度
- php生成指定长度的任意字符串
- PHP字符串长度不一致的处理方法
- PHP判断中文字符串的长度和字节长度
- PHP判断中文字符串的长度和字节长度
- PHP判断中文字符串的长度和字节长度
- PHP取字符串长度
- php获取字符串长度
- PHP截取含中文的混合字符串长度的函数
- Objective-C & Sprite Kit太空历险记 : 3. 军官训练营——控制你的代码
- Block(五)heap-stack-memory
- 简记:一次修复CentOS7因卸载多余内核后引起启动文件丢失及其后续问题的过程
- poj 2752 KMP(next数组的运用)
- 数字签名是什么?
- php 字符串长度的解释
- java小工具CommonUtils
- Objective-C & Sprite Kit太空历险记 : 4. 打造作战单位——面向对象编程(上)
- apk签名制作
- 类的封装
- HTML5(六)有序列表、无序列表、定义列表
- LeetCode - 150. Evaluate Reverse Polish Notation
- Java备份还原Mysql数据库(struts2未测试)
- L1-017. 到底有多二-PAT团体程序设计天梯赛GPLT