2012-06-11 62 views
0

我拉在一些YouTube視頻縮略圖到我的網頁有以下幾點:拉YouTube視頻的標題爲

<img src="http://i3.ytimg.com/vi/<?php echo $youtubelist[$i];?>/default.jpg"></img> 

(使用一個Joomla模塊來提供YouTube視頻的ID在$ youtubelist)

隨着youtube縮略圖,我也想拉入youtube視頻'標題'&'描述'。

我該怎麼做?

感謝

[編輯下面]

這是我的代碼&我希望把標題標籤上面:

<?php 
$youtubelist = explode(',', $youtubecode); 
$numyoutube  = count($youtubelist); 
//Get duplicate module or not 
$a=1; 
foreach ($list as $item) : 
    //$total=$a; 
    $enddbid = $item->id; 
     if ($ytslide==$enddbid) {$nummod=$a;} 
    $a++; 
endforeach; 
?> 
<div id="videos"> 
    <div style="padding-left: 2px; padding-right: 2px;padding-bottom:2px;"> 
    <?php for ($i=0; $i<$numyoutube; $i++) { ?> 
     <a href="#"> 
      <img src="http://i3.ytimg.com/vi/<?php echo $youtubelist[$i];?>/default.jpg"></img> 
     </a> 
    <?php } ?> 
    </div> 
</div> 
+2

閱讀:您使用的是這裏面的Joomla模塊的YouTube API https://developers.google.com/youtube/ – Raptor

+0

... ??? –

+0

這是一個爲我建立的模塊 - 但開發已經消失 – user991830

回答

1

您可以獲取有關使用該特定YouTube視頻信息一段代碼:

$url = "http://gdata.youtube.com/feeds/api/videos/$youtubeid?v=2"; 
$res = file_get_contents($url); 

This wil l將Atom XML與視頻的完整元數據(包括標題,作者,日期,關鍵字等)一起返回。閱讀響應的<title>元素以獲得所需內容。所以這段代碼會給你你以後:

$data = new DOMDocument(); 
$res = preg_replace('/>\s+</','><', $res); 
$root = $req->loadXML($res); 
$tnodes = $root->getElementsByTagName('title'); 
$tn = $tnodes->item(0); 
$title = $tn->firstChild->nodeValue; 

與您的代碼就需要有這樣的事情:

<div id="videos"> 
    <div style="padding-left: 2px; padding-right: 2px;padding-bottom:2px;"> 
    <?php 
     $data = new DOMDocument(); 
     for ($i=0; $i<$numyoutube; $i++) { 
      $url = "http://gdata.youtube.com/feeds/api/videos/" . $youtubelist[$i] . "?v=2"; 
      $res = file_get_contents($url); 
      $res = preg_replace('/>\s+</','><', $res); 
      $root = $req->loadXML($res); 
      $tnodes = $root->getElementsByTagName('title'); 
      $tn = $tnodes->item(0); 
      $title = $tn->firstChild->nodeValue; 
     ?> 
     <a href="#"> 
      <div style="float:left"> 
       <?php echo $title; ?> 
       <br/> 
       <img src="http://i3.ytimg.com/vi/<?php echo $youtubelist[$i];?>/default.jpg" /> 
      </div> 
     </a> 
    <?php } ?> 
    </div> 
</div> 
+0

謝謝...我可以做任何與URL/PHP - 只是爲了抓住視頻標題去我的上面的圖像? – user991830

+0

不是我所知道的。前段時間我已經討論過這個問題 - 並且必須使用XML feed來獲取信息(我只需要該信息源中的一個字段,但必須解析該信息才能獲取該值)。 –

+0

@PramodKumarSharma我更新了我的答案,包括代碼讀取標題 –

1

你可以通過視頻獲取YouTube視頻信息id在

$video_feed = file_get_contents("http://gdata.youtube.com/feeds/api/videos/$videoid"); 
       $sxml = new SimpleXmlElement($video_feed); 

       //set up nodes 
       $namespaces = $sxml->getNameSpaces(true); 
       $media = $sxml->children($namespaces['media']); 
       $yt = $media->children($namespaces['yt']); 
       $yt_attrs = $yt->duration->attributes(); 

       //vars 
       $video_title = $sxml->title; 

       $video_description = $sxml->content; 

       $video_keywords = $media->group->keywords; 

       $video_length = $yt_attrs['seconds']; 
+0

+1使用XML! – powtac