gpt4 book ai didi

php - 数组到 JSON 编码带有希伯来字符的奇怪行为

转载 作者:行者123 更新时间:2023-11-29 06:15:29 31 4
gpt4 key购买 nike

事情是这样的,我试图将一个 JSON 字符串保存到我的数据库中,但是每个希伯来字母都在转换为“\u05d4”,例如,它应该是希伯来语 (Д) 中的字母“He”。

英文编码正确

我做了研究,发现这种编码是 JAVA 或 C/C++ 字符编码,但我找不到一种方法将它作为常规 UTF-8 字符存储在我的数据库中以方便编辑...

获取数据并将其显示在我的页面上效果很好(在希伯来语中,它应该如此)但无论我尝试使用什么函数来解决问题,我数据库中的数据都是经过编码的......

示例:

\u05d0\u05d9\u05e4\u05d4 \u05ea\u05e8\u05e6\u05d4 \u05e9\u05d4\u05e9\u05dd \u05d9\u05de\u05d5\u05e7\u05dd?

应该是:

איפה תרצה שהשם ימוקם?

如您所见,编码也占用了大量额外空间,并且无法从 phpMyAdmin 进行编辑...

我保存数据的函数:

mysql_real_escape_string(json_encode($pinfo))

而 $pinfo 包含数组中的所有数据(以 utf-8 编码)

是 JSON_ENCODE() 的问题还是我还不知道的其他问题?

编辑

根据 Álvaro González 和 Tanuel Mategi 提供的信息,我找到了我想要的解决方案:mysql_real_escape_string(json_encode($pinfo, JSON_UNESCAPED_UNICODE))

希望对您有所帮助!

最佳答案

\u05d4 是 JSON 中完全有效的转义序列。它对应于U+05d4 Unicode character (希伯来文字母 He)。您的 JSON 输出显然没有任何问题——我认为您只是误读了 format documentation .

关于php - 数组到 JSON 编码带有希伯来字符的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36128962/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com