访问YouTube的YT:等级(喜欢/不喜欢)系统在PHP [英] Accessing YouTube yt:rating (like/dislike) system in PHP

查看:334
本文介绍了访问YouTube的YT:等级(喜欢/不喜欢)系统在PHP的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用PHP来访问YouTube视频的属性,例如标题,URL,缩略图,持续时间等。

I'm using PHP to access YouTube video attributes e.g. title, url, thumbnail, duration etc.

这并不是说GD:等级(5星级)已取代YT:等级(喜欢/不喜欢系统),我想修改我的PHP

Not that gd:rating (5 star ratings) has been replaced by yt:rating (like/dislike system), I'm trying to modify my PHP.

GD:评级(旧)

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

YT:等级(新)

$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:评级code没有工作。即使我做了的print_r($ YT->评级); ,没有什么数组中

我在哪里去了?

推荐答案

校正。就可以了。

您访问的需求来追加到结尾的网址:

The URL you access needs this appended to the end:

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

这一切都不同 - 所以我的code最后一点:

That made all the difference - so the last bit of my code:

// 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;

这篇关于访问YouTube的YT:等级(喜欢/不喜欢)系统在PHP的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆