校对集就是数据库数据进行比较的时候所采用的比较方式。
A =======> 01000001 =======> 65
a =======> 01100001 ========> 97
校对集有三种比较方式
_bin:使用二进制进行比较(区分大小写)
_ci:(case insensitive),大小写不敏感,不区分大小写(将某个字符转变成另外一个字符对应的大小写,从而再进行数值的比较)
_cs:(case sensitive),大小写敏感,区分大小写
比较大小:order by 字段 [asc|desc],对字段进行排序,asc表示升序(默认的),desc表示降序
默认的,不论是gbk还是utf8是不区分大小写
MysqL校对集查看:show collation;
修改数据库校对集
_bin和_ci的区别
utf8不支持中文比较,gbk支持(拼音比较)
乱码的原因:某一端不能正常的解析另一端提供的数据(理解的目标数据的字符集有误)
web包含三个部分:浏览器显示,数据库存储,PHP文件
浏览器显示:默认是gbk
数据库存储:默认是utf8
PHP文件:utf-8
防止乱码原理
理想状态下,我们希望浏览器,PHP脚本和数据库字符集三码合一,都使用一种字符集来实现。
总结以上是内存溢出为你收集整理的PHP校对集-乱码问题全部内容,希望文章能够帮你解决PHP校对集-乱码问题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)