显示来自youtube api的php输出 - php

时间:2013-07-30 11:44:38

标签: php xml api youtube

我发现我可以通过viewCount(点击)获取youtube频道的视频列表,并使用以下链接限制结果

http://gdata.youtube.com/feeds/api/users/edbassmaster/uploads?orderby=viewCount&max-results=5

这当然会返回一些xml提要代码。我试图将视频列入我的网站div。

我尝试了什么:

<?php
    $list = Array(); 
    //get the xml data from youtube 
    $url = "http://gdata.youtube.com/feeds/api/users/edbassmaster/uploads?orderby=viewCount&max-results=5"; 
    $xml = simplexml_load_file($url); 
    //load up the array $list['title'] = $xml->title[0]; 
    $list['title'] = $xml->title[0]; 
    echo $list['title'];
?>

到目前为止,只要我尝试使用$xml->title[1],就会给我xml Feed的标题。它没有返回任何东西。如何使用该xml提要列出标题并将其(href)链接到视频?我正在尝试从xml源,视频标题和网址中检索2件事。

感谢。

2 个答案:

答案 0 :(得分:3)

这样的事情:

 <?php
$url = "http://gdata.youtube.com/feeds/api/users/edbassmaster/uploads?orderby=viewCount&max-results=5";
$xml = simplexml_load_file($url);
foreach($xml->entry as $entry){
    echo "Title: ".$entry->title."<br />";
    echo "Link :".$entry->link['href']."<br />";
}
?>

答案 1 :(得分:0)

doc根目录下的第一个标题标签包含feed标题,只有一个。 要访问后续条目,请使用$xml->entry[0]

<?php
  $list = Array();
      // get the xml data from youtube 
      $url = "http://gdata.youtube.com/feeds/api/users/edbassmaster/uploads?orderby=viewCount&max-results=5";
      $xml = simplexml_load_file($url);
      // load up the array $list['entry'] = $xml->title[0]; 
      $entries = $xml->entry;
//echo preg_replace("feed","fd"file_get_contents($url)); 
  echo $entries[1]->title;//entry[0],entry[1],entry[2]... will work
         ?>