2013-07-10 101 views
0

检索视频ID因此,这里的一些代码输出的播放列表作为列表,以便我可以风格它和装载的球员。目前我只想要一些原始的数据,我可以看到我需要哪些数据。来自YouTube的API JSON播放列表

$playlist_id = "bKIMlqJAz6GSqtm2x2rFQuIa8NKEhCTa"; 
$url = "https://gdata.youtube.com/feeds/api/playlists/".$playlist_id."?v=2.1&alt=json"; 
$data = json_decode(file_get_contents($url),true); 
$info = $data["feed"]; 
$video = $info["entry"]; 
$nVideo = count($video); 

echo "Playlist Name: ".$info["title"]['$t'].'<br/>'; 
echo "Number of Videos (".$nVideo."):<br/>"; 

for($i=0;$i<$nVideo;$i++){ 
echo "ID: ".$video[$i]['id']['$t'].'<br/>'; // this line causing problems 
echo "Name: ".$video[$i]['title']['$t'].'<br/>'; 
echo "Link: ".$video[$i]['link'][0]['href'].'<br/>'; 
echo "Image: <img src='".$video[$i]['media$group']['media$thumbnail'][1]['url']."' /><br />"; 
} 

所有的工作都很好,doodey doodey。除非我无法获得身份证。

该ID返回例如这堆垃圾; ID:标签:youtube.com,2008:播放列表:bKIMlqJAz6GSqtm2x2rFQuIa8NKEhCTa:PLLdE_Ow1C_Zv2bmDW9Yj8Foj4dKO3C4BJthoFmebTFUs

,而不是用来正确地链接和标题返回LFRRGYNOUqs。

我搜索谷歌的文档,似乎$视频[$ i] [“身份证”]是我所需要的对象。

那么,为什么返回的字符串,而不是我的视频ID?

回答

0

根据API的XML部分(以下简称“JSON”版本基本相同):“标签指定URN唯一和永久标识饲料或饲料条目”。

https://developers.google.com/youtube/2.0/reference#youtube_data_api_tag_id

在你的情况,你可以使用$video[$i]['media$group']['yt$videoid']['$t']

您可能需要使用“jsonc”而不是“JSON”,则返回专门为JSON而不是做的XML版本转录格式的数据。即https://gdata.youtube.com/feeds/api/playlists/bKIMlqJAz6GSqtm2x2rFQuIa8NKEhCTa?v=2.1&alt=jsonc

在那里,你会发现,每一个“项目”,在播放列表中有对应的feed条目,并用自己的ID的视频部分的ID。

相关问题