2011-10-06 133 views
4

我想从Vimeo的XML API输出中获取数据。从xml中检索vimeo视频信息

在Vimeo的,如果我们加载这个URL:http://vimeo.com/api/v2/video/30055721.xml视频ID是30055721,它将输出在浏览器(单线XML块)的XML数据:

<?xml version="1.0" encoding="UTF-8"?><videos><video><id>30055721</id><title>[MV]I-ny(아이니) 뮤직비디오</title><description>눈부신 가을 하늘을 닮은 목소리의 주인공 '아이니(i-ny)', &lt;br /&gt; 그녀의 이름을 노래하다.</description><url>http://vimeo.com/30055721</url><upload_date>2011-10-04 22:34:19</upload_date><mobile_url>http://vimeo.com/m/30055721</mobile_url><thumbnail_small>http://b.vimeocdn.com/ts/201/671/201671639_100.jpg</thumbnail_small><thumbnail_medium>http://b.vimeocdn.com/ts/201/671/201671639_200.jpg</thumbnail_medium><thumbnail_large>http://b.vimeocdn.com/ts/201/671/201671639_640.jpg</thumbnail_large><user_id>2991448</user_id><user_name>Deviljoon</user_name><user_url>http://vimeo.com/user2991448</user_url><user_portrait_small>http://b.vimeocdn.com/ps/217/387/2173872_30.jpg</user_portrait_small><user_portrait_medium>http://b.vimeocdn.com/ps/217/387/2173872_75.jpg</user_portrait_medium><user_portrait_large>http://b.vimeocdn.com/ps/217/387/2173872_100.jpg</user_portrait_large><user_portrait_huge>http://b.vimeocdn.com/ps/217/387/2173872_300.jpg</user_portrait_huge><stats_number_of_likes>3</stats_number_of_likes><stats_number_of_plays>542</stats_number_of_plays><stats_number_of_comments>0</stats_number_of_comments><duration>235</duration><width>1280</width><height>720</height><tags>I-ny, 아이니, 뮤직비디오, music video, MV, kpop, k-pop, 550d</tags><embed_privacy>anywhere</embed_privacy></video></videos> 

但我想检索数据XML字段动态显示在我的网页中。

回答

2

看看这篇文章的一个完整的运行通过:

http://ditio.net/2008/06/19/using-php-curl-to-read-rss-feed-xml/

这应该给您提供有关如何将XML内容提取到你的PHP脚本,然后解析XML的内容到一个好主意你的PHP。您需要对解析feed的过程进行一些调整,具体针对vimeo输出,但您应该可以简单地通过玩游戏来做到这一点。

例如以下将输出该ID。

$ch = curl_init("http://vimeo.com/api/v2/video/30055728.xml"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
$data = curl_exec($ch); 
curl_close($ch); 
$xml= new SimpleXmlElement($data, LIBXML_NOCDATA); 
echo "<strong>".$xml->video->id."</strong>"; 

一旦$xml已经建立,只需更改$xml->video->id要哪个节点(crucually的“身份证”部分')。

+0

它的工作,谢谢,我只是通过我的代码,经过我的调整 –

+0

嗯不知道为什么 - 测试时,测试,与实时主机上的PHP的最新版本绝对是一个好的 – SW4

+0

看到这里,那里在WAMP中使用CRUL时似乎是一个问题:http://www.wampserver.com/phorum/read.php?2,43026,43027。但它适用于实时部署。 – SW4