通过Json显示视频计数


Show Video Count Via Json

所以我一直在用imagecreatepng做一个动态签名,我使用的API是

(假设用户名为"googlechrome")

http://gdata.youtube.com/feeds/api/users/googlechrome?v=2&alt=json

这行显示他们有289个视频:

{"rel":"http://gdata.youtube.com/schemas/2007#user.uploads","href":"http://gdata.youtube.com/feeds/api/users/googlechrome/uploads?v=2","countHint":289},

我不确定如何在图像上打印出来。

到目前为止我的代码。

语法:domain.com/image.php?channel=谷歌色素

yt.png=https://i.stack.imgur.com/XpkDf.png

<?php
$channel = $_REQUEST["channel"];
$image = ('yt.png');
$im = imagecreatefrompng($image);
$white = imagecolorallocate($im, 255, 255, 255);
$width = imagesx($im);
$height = imagesy($im);
$font = 2;
$json_output = file_get_contents('http://gdata.youtube.com/feeds/api/users/'.($channel).'?v=2&alt=json');
$json = json_decode($json_output, true);
$username = $json['entry']['yt$username']['$t'];
$view_count = $json['entry']['yt$statistics']['totalUploadViews'];
$sub_count = $json['entry']['yt$statistics']['subscriberCount'];
//$video_count = $json['entry']['DUNNO_YET']['$t'];
$UserName = ("".$username);
imagestring($im, $font, $width-190, $height-59, $UserName, $white);
$viewCount = ("".$view_count);
imagestring($im, $font, $width-190, $height-45, $viewCount, $white);
$subCount = ("".$sub_count);
imagestring($im, $font, $width-190, $height-30, $subCount, $white);
$VideoCount = ("".$video_count);
imagestring($im, $font, $width-190, $height-15, $VideoCount, $white);
//text before counts
$UNAME = ('Username:');
imagestring($im, $font, $width-278, $height-59, $UNAME, $white);
$TOTALVIEWS = ('Total Views: ');
imagestring($im, $font, $width-278, $height-45, $TOTALVIEWS, $white);
$SUBS = ('Subscribers: ');
imagestring($im, $font, $width-278, $height-30, $SUBS, $white);
$TOTALVIDEOS = ('Total Videos: ');
imagestring($im, $font, $width-278, $height-15, $TOTALVIDEOS, $white);
Header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>

感谢任何帮助!

$video_count变量应等于:

$video_count = $json['entry']['gd$feedLink'][6]['countHint'];

然而,我不确定上传计数是否总是在gd$feedLink的第6个索引处,因此使用以下内容可能是一个明智的想法:

$video_count = 0;
foreach ($json['entry']['gd$feedLink'] as $feed) {
    if ($feed['rel'] == 'http://gdata.youtube.com/schemas/2007#user.uploads') {
        $video_count = $feed['countHint'];
        break;
    }
}