实验室-mysql中varchar能存储多少中文字节
2016-12-19 13:17
323 查看
刚做了一个小案例的时候,发现需要对字符串进行长度判断。 所以就引来了一个问题,php中如何书写判断字符长度与mysql长度耦合的代码?
测试: varchar(32)能存储多少个中文,英文及其他字符?
测试代码如下:
var_dump(mb_strlen('你好吗aa','utf8'));//int(5) var_dump(mb_strlen('你好吗aa'));//int(11) var_dump(iconv_strlen('你好吗ab'));//int(11) var_dump(strlen('你好吗ab'));//int(11)
很显然,用mb_strlen函数,并指定相应的字符编码更适合我的需求。
测试结果:无论中文字符或是英文字符特殊符号在mysql数据库中的varchar数据类型里都是占一个“字符长度”!而不是以字节计算。
测试环境:mysql5.6+php5.3
相关文章推荐
- Mysql的varchar(20)到底可以存储多少个中文字符
- Mysql的varchar(20)到底可以存储多少个中文字符
- ORACLE中一个字符占多少字节?(中文存储)
- Mysql中的varchar可以存储多少个汉字和英文呢?
- 【转】Mysql中varchar存放中文与英文所占字节异同
- mysql 数据库varchar(100)可以存储多少个汉字,多少个数字
- MySql (MariaDB)的varchar字段的存储的是字符还是字节
- MySQL中汉字占多少字节?varchar(x)中的x如何理解?
- 使用Java读写存储在latin1编码的MySQL中的UTF-8编码的中文
- Asp.net中Mysql存储中文乱码解决方法
- MySQL中varchar最大长度是多少?
- Asp.net 调用mysql存储过程参数传中文乱码!
- MySql使用全记录3 -----以中文作为查询条件时结果为空的原因以及两个MySql小知识点(varchar、单双引号)
- 如何varchar类型的字段存储中文汉字(SQL Server 2008/2008 R2/2012)
- 解决mysql 5.5与hibernate存储中文乱码问题
- 关于mysql字符串的存储之char,varchar类型
- c++ linux 如何把 char* 里面的中文 insert进入mysql(相应的字段为varchar类型)
- 解决Java Web开发中Jsp存储读取MySQL数据中文乱码的问题
- MySQL中varchar最大长度是多少?
- mysql 存储中文问题