我的PHP脚本包含UTF-8编码,数据库和数据库中的表也使用UTF8编码(utf8_general_ci)。但是在构建和执行mysqli查询之后,这些字符串将进行错误的编码,并且它们看起来像(在db中)它们需要UTF-8转换,因此它们被编码为CP1252或类似的东西。 (我用了一个西里尔字符串)。
我用来连接数据库的代码在这里:
$db = new mysqli("localhost", "root", "", "nf");
$db->set_charset("utf8");
所以你看到设置的字符集是utf8,而数据库也是utf-8和表格。
所以IDK为什么以及在哪里将字符串转换为错误的字符集,就像他们无缘无故地转换为CP1252编码一样。
有什么理由可以这样做?我可以提供哪些其他信息?
答案 0 :(得分:0)
试试这一行:
mysql_query(“SET NAMES'utf8'”);