Доступ к YouTube yt: система рейтинга (нравится / не нравится) в PHP - PullRequest
1 голос
/ 05 января 2011

Я использую PHP для доступа к атрибутам видео YouTube, таким как заголовок, URL, миниатюра, продолжительность и т. Д.

Не то, чтобы gd: rating (5 звездочек) был заменен на yt: rating (like / dislike)система), я пытаюсь изменить свой PHP.

gd: rating (old)

$gd = $entry->children('http://schemas.google.com/g/2005');  
if ($gd->rating) {  
    $attrs = $gd->rating->attributes();  
    $rating = $attrs['average'];   
} else {  
    $rating = 0;   
}

yt: rating (new)

$yt = $entry->children('http://gdata.youtube.com/schemas/2007');  
if ($yt->rating && $yt->rating[0]->attributes()) {  
    $attrs = $yt->rating[0]->attributes();  
    $videoobj[$loopCounter]['dislikes'] = strval($attrs['numDislikes']);  
    $videoobj[$loopCounter]['likes'] = strval($attrs['numLikes']);  
} else {  
    $videoobj[$loopCounter]['dislikes'] = 0;  
    $videoobj[$loopCounter]['likes'] = 0;  
}

Использование кода рейтинга yt: не работает.Даже если я сделаю print_r($yt->rating);, в массиве ничего не будет.

Куда я иду не так?

1 Ответ

2 голосов
/ 10 февраля 2011

Исправление.Вы можете.

URL, к которому вы обращаетесь, необходимо добавить в конце:

    $url = 'http://gdata.youtube.com/feeds/api/videos/' . $vid . '?v=2';

В этом вся разница - последний бит моего кода:

// get <yt:rating> node for like/dislikes
$yt = $entry->children('http://gdata.youtube.com/schemas/2007');
$attrs = $yt->rating->attributes();
$obj->dislikes = $attrs['numDislikes'];
$obj->likes = $attrs['numLikes'];
echo $obj->dislikes;
echo ' ';
echo $obj->likes;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...