1

我正在使用 YouTube API 从 JSON 中的视频中获取评论,使用以下代码:

$url = 'https://gdata.youtube.com/feeds/api/videos/' . $video_id .'/comments?alt=json&max-results=50&v=2';
$comments = array();

$json   = file_get_contents($url);
$data   = json_decode($json, TRUE);

foreach($data["feed"]["entry"] as $item)
{
    array_push($comments, $item["content"]['$t']);
}

但是,当我在评论中不断收到“”时,存在某种字符编码问题- 通常在句子/评论的末尾。

关于如何使用正确的 ASCII 字符编码读取 JSON 的任何想法?

4

1 回答 1

1

感谢Danack指出它是一个字节顺序标记(BOM)

这也处理相同的问题 -如何从文件开头删除 ?

那里的解决方案似乎都不起作用,所以我自己解决了。在通过之前json_decode,特殊字符很简单\ufeff,所以我在解码之前简单地删除了它们。

$temp   = file_get_contents($json_url, 0, null, null);
$temp   = str_replace('\ufeff', '', $temp);     
$data   = json_decode($temp, TRUE);
于 2013-05-31T23:17:15.533 回答