我正在使用SimpleXML和Youtube API从Youtube播放列表中获取一些视频。我设法得到每个视频的标题,但无法弄清楚如何获取视频ID。
如何获取<yt:videoid>
代码?
这是我到目前为止所得到的:
$xml = simplexml_load_file('http://gdata.youtube.com/feeds/api/playlists/ ID ');
$videos=array();
foreach ($xml->entry as $video) {
$vid = array();
$vid['title'] = $video->title; // <- This Works
$media = $video->children('http://search.yahoo.com/mrss/');
$yt = $media->group->children('http://gdata.youtube.com/schemas/2007');
$vid['id']=$yt->videoid; // <- Not Working
$videos[]=$vid;
}
答案 0 :(得分:1)
这里只是一个疯狂的猜测:你只是输出'标题',但你尝试用'videoid'做其他事情?因为您要添加到$vid
数组的不是字符串,而是SimpleXMLElement
- 对象。你必须手动投射它们:
$vid['id']= (string) $yt->videoid;
除此之外,您的代码运行正常。
答案 1 :(得分:0)
这将有效:
$yt = $media->children('http://gdata.youtube.com/schemas/2007');
$vid['id']=$yt->videoid;