2012-07-25 4 views
0

J'utilise le code PHP ci-dessous pour obtenir les commentaires pour une vidéo spécifique:Youtube API - Video Commentaires Pagination

<?php 
    $vid = "G0k3kHtyoqc"; 
    $feedURL = 'http://gdata.youtube.com/feeds/api/videos/' . $vid; 
    $entry = simplexml_load_file($feedURL); 

    $gd = $entry->children('http://schemas.google.com/g/2005'); 
    if($gd->comments->feedLink){ 
     $attrs = $gd->comments->feedLink->attributes(); 
     $commentsURL = $attrs['href']; 
     $commentsCount = $attrs['countHint']; 
    } 

    if($commentsURL && $commentsCount > 0){ 
     $commentsFeed = simplexml_load_file($commentsURL);  
     echo "<ol>"; 
     foreach($commentsFeed->entry as $comment){ 
     echo "<li>"; 
     echo "<a target='_blank' href='http://www.youtube.com/user/" . $comment->author->name . "'>"; 
     echo $comment->author->name; 
     echo "</a>"; 
     echo " - " . $comment->content; 
     echo "</li>"; 
     } 
     echo "</ol>"; 
    } 
?> 

Le problème avec le code ci-dessus est qu'il obtient seulement les 24 derniers commentaires. J'ai besoin d'un moyen de paginer à travers tous les commentaires.

Votre aide est grandement appréciée.

Merci

Répondre

1

Utilisez le "start-index" COMMUT. Commence le 1, et en fonction du nombre de commentaires, ajoute [comments-count] au paramètre start-index.

Par exemple: Première page de commentaires, obtenir 25 commentaires par page, utilisez max-résultats = 25 et start-index = 1 Deuxième page de commentaires, obtenir 25 commentaires par page, utilisation max-résultats = 25 et start-index = 26

Et ainsi de suite) =

Cordialement!