mysqli 中文编码中的bug

在使用的Mysqli设置编码时注意有$mysqli->set_charset("uft8");,$mysqli->query("set names 'uft8'");两种方式,两个貌似功能都可以实现,但是后一种方式在使用过程中并不稳定,在其他编码都设置统一的前提下,会出现以下意外情况:

1 插入中文是正常的,但是读取时是乱码;

2 读取是正常的,但是插入的是乱码;

3 插入读取都正常。

所以建议大家在使用Mysqli设置编码时,使用mysqli内置方法,直接设置。以免出现意想不到情况,通过mysqli_character_set_name获取mysql数据库编码可以了解他们的区别。

原文地址:https://www.cnblogs.com/kevinlzf/p/3044590.html