2010-07-14 74 views
0

我目前使用以下,這似乎是很慢的多個片段:有沒有比這更快的方式來獲取YouTube剪輯的標題?

static function get_yt_title($clip_id){  
    $feedURL = 'http://gdata.youtube.com/feeds/api/videos/' . $clip_id; 
    $entry = @simplexml_load_file($feedURL); 
    if($entry){ 
     $video= new stdClass; 
     $media = $entry->children('http://search.yahoo.com/mrss/'); 
     $video->title = ucwords(strtolower($media->group->title)); 
     return $video->title; 
    } 
    else{ 
     return FALSE; 
    } 

任何更有效的方法比這個在用PHP時間做5-10片段?

回答

0

是的。

  • 獲取更快的服務器。
  • 分鐘,但乾淨你的代碼

    static function get_yt_title($clip_id) 
    { 
        $entry = @simplexml_load_file('http://gdata.youtube.com/feeds/api/videos/' . $clip_id); 
        return ($entry) ? ucwords(strtolower($entry->children('http://search.yahoo.com/mrss/')->group->title)) : false; 
    } 
    

使用JSON供稿:http://gdata.youtube.com/feeds/api/videos/?alt=json通過附加?alt=json到URI

+0

最有可能的,這是不正確的。他試圖做的事情沒有太多的計算能力。消耗的最多時間是在網絡I/O中。可能有幫助的事情是:將服務器更靠近gdata服務器,或者可能有更容易解析的請求格式。除此之外,你無能爲力。 – 2010-07-14 12:17:27

+0

當我說服務器速度更快時,我說的是與連接速度相關的問題,並且在涉及到代碼時略顯諷刺,只是清除了並非真正需要的變量。 – RobertPitt 2010-07-14 12:23:55

+1

也可以幫助,如果他們有像json這樣的可用的冗長格式? (更少的數據通過電匯發送?) – Svish 2010-07-14 13:52:36

0

我不認爲有。 據我所知,這是獲得這樣的元數據的推薦方式。

還有一件事我能想到,那就是刮掉youtube.com上的html,我幾乎可以保證你不會更快和確定地獄是不可靠的。

+0

哈哈,耶刮是嚴重緩慢,就像你提到一個痛苦持續! – Haroldo 2010-07-14 11:42:46

+0

將使用curl來檢索xml幫助的速度?那麼只需將xml解析爲一個字符串? – fire 2010-07-14 11:47:50

0

如果你這樣做了很多對同一剪輯的ID,你可以緩存結果在您的服務器上。

相關問題