utf8转成gbk
使用set names 字符集需要,而且你的文件编码也应该是gbk
如果你什么cmd直接连接mysql client操作的话,不需要,mysql自动转换的
如果你实在cmd下执行php的话,输出时根据php文件编码决定的。
从数据库到php是一次IO,从php echo到cmd也是一次IO,要注意两次IO前后的编码变化
你说cmd,应该是windows吧,windows的cmd默认是跟随系统编码的,如简体中文的windows其cmd默认是cp936(相当于gbk)编码,此编码可以通过注册表做永久改变,或使用"chcp xxx"命令临时改变,其中xxx是编码号,936相当于gbk,65001相当于utf-8
在cmd最开始输入chcp 65001回车,cmd的窗口就变成相当于utf-8编码输出了
注:cpxxx是微软定的编码,和对应的通用编码有很轻微的不同,一般使用时不涉及这些差异的内容,所以上面所说都是“相当于”
楼上的学习了 默默收藏
只要你的数据字段的连接校对是中文系列的(gbk、big5、utf8、ucs-2、utf-16....)
那么你在使用时只需 set names 字符集,以后就可按你需要的字符集进行操作
编码转换的工作由 mysql 替你完成