PHP 如何sqlldr中截取字段长度标题长度 (utf-8编码)?

适用mysql5.0以上的版本:

=========华丽丽分隔线转载如下:==========

涉及到了字符长度问题,搜索了一下,几乎千篇一律, 所以决定自己测试一下,彻底弄清楚字符长度问题.编码一律为 UTF-8 编码 :

先来测试一下 php 把一个汉字认作几个字节:

输出 3 , 证明在 UTF-8编码下, 一个汉字被认作3个字节长度.

证明 mysql 并不会对超过長度的字符报错,而是直接截断了.

证明 mysql 的 char(n) 可以直接存储 n 个汉字. 而不是 n/3 个mysql 屏蔽了具体的存储细节,而直接以实际字符的个数来决定 char存储的个数.这裏只是测试在UTF8编码下的,如果是GBK编码,可能不一样,没兴趣去测试那么多了.

LENGTH 输出的结果是 字符实际长度的!
而 CHAR_LENGTH输出的则是屏蔽了字符存储细节,是实際的字符个数!

在涉及中文环境下的php+mysql组合,最好是用 mb_strlen来检测字符长度, 而在mysql 中,使用 CHAR_LENGTH来检测字符长度,这样能做到中英文统一处理.

utf8_general_ci 不区分大小写,这個你在注册用户名和邮箱的时候就要使用

我要回帖

更多关于 怎么剪辑视频长度 的文章

 

随机推荐