json_encode在一台机器上返回utf-8错误而不是另一台机器

时间:2015-03-03 09:33:18

标签: php encoding utf-8

我从数据库中提取数据并在关联数组中重新排列。 我正在使用MySQL,db collat​​ion是utf8_general_ci。

在我的开发机器上,当我回显json_encode($ data)时,一切都很完美

我将数据库导入我的服务器,所有相同的脚本等...但是,对于某些结果,json_ecode在调查时不返回任何内容,

echo json_last_error() === JSON_ERROR_UTF8;

返回1.

我真的不知道如何进一步调试,有没有人对这里发生的事情有任何指示?

修改

我不知道这是怎么回事,我理解使用utf8_encode ...它在不同系统上的工作方式不同让我感到困惑,任何帮助都会受到高度赞赏。

第二次编辑

没有必要使用一个工作示例来说明需要utf8_encode,因为它不是正确的解决方案。 dev mysql服务器的配置与远程mysql服务器不同。

对我有用的解决方案是编辑/etc/mysql/my.conf

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci

如果重新开启,我很乐意回答这个问题。

0 个答案:

没有答案