一个很奇怪的问题,关于中文乱码,读取数据库中文显示???

初学者

我在windows下使用的时候没有问题,转移到Linux中其他PHP文件读取MySQL中文也正常,但是在使用workerman,读取的中文全部变成了???,求大神支招,非常感谢!

4057 4 0
4个回答

初学者

补充一下,我查看了库和表的编码都是utf8,并且我的PHP文件编码也是utf8

  • 暂无评论
walkor

在哪里看到的乱码?
截个图吧。

除了库和表的编码、PHP文件编码都要一致外,客户端显示时的编码也要一致才行

  • 初学者 2017-09-15

    摸索了好久还是不行,不只是客户端显示出问号,而是在读取MySQL中的中文数据后,哪个数据就变成了问号。并且只有使用workerman框架时才会出现问号。

初学者

总体来说就是其他时候读取写入中文都正常,但是用了workerman框架后的读取就变成了问号,写入自然也将问号写入了。但是执行其他文件时读取同一个数据库的中文都是正常的

  • 暂无评论
walkor

这个要自己找原因了,其它开发者使用都是ok的。

  • 初学者 2017-09-15

    就在刚刚发问之后,我找到问题了,是连接时的编码出了问题,在连接后执行mysql_query(‘SET NAMES gbk’);就没有问号了。很奇怪,其他时候都是正常的,我在windows下面使用workerman也是正常的,但是Linux下使用时就出了问题,加上这一句问题解决。不过还是非常感谢您的

年代过于久远,无法发表回答
🔝