mysql - 将 JSON 字符串插入 MySQL 列 UTF-8

标签 mysql json post utf-8

我正在生成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"}]

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

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

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

phpMyAdmin 截图: enter image description here

最佳答案

感谢@RickJames的帮助,使用JSON_UNESCAPED_UNICODE解决了

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

关于mysql - 将 JSON 字符串插入 MySQL 列 UTF-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41395966/

相关文章:

java - 如果抛出异常,@Transactional 不起作用

php - 如何将变量设置为 select 语句上的默认选择以及从数组中列出选择

PHP超时错误500

c# - HttpClient POST 到 WCF 返回 400 错误请求

jquery - 将 JSON 对象插入客户端 Web sql 数据库

php - 将数值一插入表列中,而不是姓名、电子邮件和位置

ios - 解析JSON并检查key是否存在

php - 从数据库中删除用户 - GET 方法更改为 POST 方法

java - Http post 获取响应 Android

java - 嵌套运行时异常 : Cannot parse POST parameters of request