时间:2021-07-01 10:21:17 帮助过:19人阅读
你php文件本身是什么编码?是不是gbk
基本上 数据库设计的编码有问题.重新设置一下吧 数据库 表 字段 编码
数据库低版本的数据编码方式好像只有gbk,我装的最新版本的就不用更改编码方式为gbk
应该是PHP本身是GBK,而数据库却是UTF8的编码所造成的。
用命令行的话,CMD窗口的mysql客户端采用的是GBK编码,所以才需要声明set names gbk
如果是PHP做客户端来调用MySQL,就需要set names utf-8
也就是说,客户端是什么编码,你就要声明需要什么编码,但是设计表的时候,一般用utf-8的编码。
无论是做什么操作 set names 字符集 都是需要的
或许你可以调整你的数据库配置,来省去交互时的字符集声明,但你的程序就存在着乱码隐患
用命令行的话,CMD窗口的mysql客户端采用的是GBK编码,所以才需要声明set names gbk
如果是PHP做客户端来调用MySQL,就需要set names utf-8
也就是说,客户端是什么编码,你就要声明需要什么编码,但是设计表的时候,一般用utf-8的编码。