【问题标题】:Inserting JSON string into MySQL column UTF-8将 JSON 字符串插入 MySQL 列 UTF-8
【发布时间】:2017-05-14 17:43:54
【问题描述】:

我正在生成 JSON 有效字符串,例如:[{"head":"Model Name","body":"T102HA-GR015T"}]

UTF-8 页面上生成的字符串,带有 header('Content-Type: text/html; charset=utf-8'); 和文件编码 UTF-8

PDO 与charset=utf8 建立的数据库连接

数据库表和列排序规则为utf8_general_ci

当它插入到数据库时,它看起来像:

俄语[{"head":"\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438","body":"T102HA-GR015T"}]

希伯来语[{"head":"\u05d3\u05d2\u05dd","body":"T102HA-GR015T"}]

我希望它以实际的语言字符插入到 db 中,例如:

俄语[{"head":"Название модели","body":"T102HA-GR015T"}]

希伯来语[{"head":"דגם","body":"T102HA-GR015T"}]

phpMyAdmin 截图:

【问题讨论】:

标签: mysql json post utf-8


【解决方案1】:

感谢@RickJames 的帮助,使用 JSON_UNESCAPED_UNICODE

解决了

$array = json_encode($array, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES)

【讨论】:

    猜你喜欢
    • 2013-05-05
    • 1970-01-01
    • 2011-09-06
    • 2016-06-30
    • 2018-01-26
    • 1970-01-01
    • 2012-08-09
    • 2015-04-29
    相关资源
    最近更新 更多