1.mytable1存储的数据是utf8字符集(在创建表的时候,指定了表的数据存储字符集为utf8)
2.cmd控制台只能是gbk格式的数据:说明cmd下只能输入和显示gbk格式的数据
3.set names gbk的功能
客户端与服务端进行不同编码的通信的原理
了解数据库的字符集
查看数据库支持哪些字符集?show character set;
MysqL支持39种字符集编码。
查看服务器对客户端的默认识别方式:将客户端当前何种字符集对待。
show variables like ‘character_set_%’;
1.要保证服务器能够正确识别客户端传过去的数据,只要保证character_set_clIEnt的字符集与客户端的字符集一致即可。
set character_set_clIEnt = gbk;
2.要保证服务器能够正确的给客户端提供对应字符集的数据,只要保证character_set_results与客户端的字符集一致即可
set character_set_results = gbk;
3.set names gbk:所做的事情就是将传输数据以及接受数据都设置成当前客户端的字符集
set names gbk;
<=========>
set character_set_clIEnt = gbk;
set character_set_connection = gbk;
set character_set_results = gbk
set character_set_database = gbk;
在使用cmd下面的MysqL.exe的时候:set names gbk
在使用EditPlus的时候,EditPlus下面的编码是ANSI,ANSI代表当前电脑默认的字符集,中国大陆销售的电脑默认都是gbk编码:set names gbk
在使用EditPlus的时候,EditPlus下面的编码是utf-8:set names utf8
一旦数据库存储的数据本身是乱码,那么任何修改都不可以生效,全部查看到的都是乱码。
总结以上是内存溢出为你收集整理的PHP字符集问题全部内容,希望文章能够帮你解决PHP字符集问题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)