我正在从返回编码字符的API中检索数据。例如,返回的字符串的一部分是\u2605
,它是特殊符号(开头)的unicode,请参阅链接:
http://www.fileformat.info/info/unicode/char/2605/index.htm
使用php我运行以下代码将数据转换为数组,以便我可以使用它:
$result = file_get_contents($url);
$decoded = json_decode($result, true)
然而,我遇到的问题是符号的unicode代码然后被转换为一些giberish。例如,\u2605
已转换为★
。
其他符号也被转换。
我可以在这做什么?
答案 0 :(得分:0)
JSON默认使用utf-8
字符编码。
这就是为什么你必须在utf-8字符集中输出解码的JSON的原因。
如果您在html中输出,请尝试设置元字符集:
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<?php
$json = '{"value":"\u2605"}';
$dec = json_decode($json);
var_dump($dec);
?>
</body>
</html>