4

我有一个像这样的字符串“\u041a\u043b\u0443\u0431 Test”;

由json_encode()解码,原字符串为俄语“Клуб Test”。当我把它放到 js 中时

alert("\u041a\u043b\u0443\u0431 测试");

我得到正确的显示,就像在屏幕上一样。所以 js 以某种方式将其解码为正常视图。问题是我如何在 php 中做同样的事情,是否有任何内置方法?

在此处输入图像描述

答案是:
$json_in = '{"testKey":"\u041a\u043b\u0443\u0431 测试"}';
$json_out = json_decode($json_in, true);
或者
将“\u041a\u043b\u0443\u0431”转换为“Клуб”
并执行 html_entity_decode($str, null, 'UTF-8');

4

2 回答 2

6

转换数据时,JSON_UNESCAPED_UNICODE用作选项

echo json_encode($text, JSON_UNESCAPED_UNICODE);
于 2012-05-04T22:59:32.780 回答
1

您可能希望 HTML 实体打印字符:

  • Ӓ 对于十进制代码
  • Ī 对于十六进制代码
于 2012-05-04T14:49:23.200 回答