为什么mysql_client_encoding()返回" latin1"当MySQL配置为" UTF8"?

时间:2017-06-22 18:50:25

标签: php mysql utf-8 character-encoding character-set

当我在MySQL中运行SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%'时,我得到以下变量:

Variable_name               Value
character_set_client        utf8
character_set_connection    utf8mb4
character_set_database      utf8mb4
character_set_filesystem    binary
character_set_results       utf8
character_set_server        utf8mb4
character_set_system        utf8
collation_connection        utf8mb4_unicode_ci
collation_database          utf8mb4_unicode_ci
collation_server            utf8mb4_general_ci

但是,当我运行一个简单的测试来连接到PHP 没有设置任何编码的MySQL时,mysql_client_encoding()会返回latin1,但是在MySQL字符集中找不到编码。

为什么会发生这种情况?如何解决这个问题,以便每次连接MySQL时都不必不断指定mysql_set_charset('UTF8');

0 个答案:

没有答案