我在windows下使用的時候沒有問題,轉(zhuǎn)移到Linux中其他PHP文件讀取MySQL中文也正常,但是在使用workerman,讀取的中文全部變成了???,求大神支招,非常感謝!
補充一下,我查看了庫和表的編碼都是utf8,并且我的PHP文件編碼也是utf8
在哪里看到的亂碼? 截個圖吧。
除了庫和表的編碼、PHP文件編碼都要一致外,客戶端顯示時的編碼也要一致才行
摸索了好久還是不行,不只是客戶端顯示出問號,而是在讀取MySQL中的中文數(shù)據(jù)后,哪個數(shù)據(jù)就變成了問號。并且只有使用workerman框架時才會出現(xiàn)問號。
總體來說就是其他時候讀取寫入中文都正常,但是用了workerman框架后的讀取就變成了問號,寫入自然也將問號寫入了。但是執(zhí)行其他文件時讀取同一個數(shù)據(jù)庫的中文都是正常的
這個要自己找原因了,其它開發(fā)者使用都是ok的。
就在剛剛發(fā)問之后,我找到問題了,是連接時的編碼出了問題,在連接后執(zhí)行mysql_query(‘SET NAMES gbk’);就沒有問號了。很奇怪,其他時候都是正常的,我在windows下面使用workerman也是正常的,但是Linux下使用時就出了問題,加上這一句問題解決。不過還是非常感謝您的