如何使用PHP解析unicode格式(例如。\u201c\u2014)

如何使用PHP解析unicode格式(例如。\u201c\u2014),php,unicode,facebook-graph-api,Php,Unicode,Facebook Graph Api,我正在从Facebook图表中提取数据,该图表的字符编码如下:\u2014和\u2014 是否有将这些字符转换为HTML的函数?i、 e\u2014->&mdash 如果您对这些字符代码有进一步的了解,或者建议您阅读有关unicode的一般内容,我将不胜感激。这让我很困惑。我不知道这些代码叫什么。。。我猜是unicode,但unicode似乎意味着很多东西。FacebookGraphAPI返回JSON对象。使用将它们读入PHP,您不必担心如何处理字符串文字转义,如\unnn。不要试图自己解码JS

我正在从Facebook图表中提取数据,该图表的字符编码如下:
\u2014
\u2014

是否有将这些字符转换为HTML的函数?i、 e
\u2014->&mdash


如果您对这些字符代码有进一步的了解,或者建议您阅读有关unicode的一般内容,我将不胜感激。这让我很困惑。我不知道这些代码叫什么。。。我猜是unicode,但unicode似乎意味着很多东西。

FacebookGraphAPI返回JSON对象。使用将它们读入PHP,您不必担心如何处理字符串文字转义,如
\unnn
。不要试图自己解码JSON/JavaScript字符串文本,或者使用正则表达式提取所选属性


读取字符串值后,您将得到一个UTF-8编码的字符串。如果目标HTML也是UTF-8编码的,则不需要用任何实体引用替换
-
(U+2014)。输出字符串时只需在字符串上使用
htmlspecialchars()
,这样任何
都不会完全正确。
如何处理包含西班牙语口音的json?
有两个问题。
我制作FB.api(url、函数(响应)
…var s=JSON.stringify(响应)

并通过$.post将其传递给php脚本

首先我得到一个被截断的字符串。我需要转义(JSON.stringify(response)) 然后我得到一个完整的json编码字符串,带有西班牙语口音。 作为测试,我把它放在一个文本文件中,我加载了文件的内容,然后应用phpjson\u解码,什么也得不到。 您首先需要utf8\u编码

然后你得到了你渴望的目标。 经过一整天的测试和谷歌没有任何结果时解码unicode正确,我找到了你的帖子。
非常感谢您。

有人让我解决Facebook JSON存档中的阿拉伯文问题,也许这段代码有助于从Facebook(或instagram)JSON搜索阿拉伯文:

请看一个关于这个问题的答案,可能是
    $str = '\u00d8\u00ae\u00d9\u0084\u00d8\u00b5';

    function decode_encoded_utf8($string){
        return preg_replace_callback('#\\\\u([0-9a-f]{4})#ism', function($matches) { return mb_convert_encoding(pack("H*", $matches[1]), "UTF-8", "UCS-2BE"); }, $string);
    }
    echo iconv("UTF-8", "ISO-8859-1//TRANSLIT", decode_encoded_utf8($str));