【问题标题】:Retrieve 16:9 youtube thumbnails instead of the 4:3 black bordered ones?检索 16:9 的 youtube 缩略图而不是 4:3 黑色边框的缩略图?
【发布时间】:2018-06-28 21:21:59
【问题描述】:

我正在尝试使用 PHP 从 Youtube 频道检索最近上传的视频列表,但是缩略图都是 4:3 格式,顶部和底部有黑色边框。 我正在使用以下内容来检索缩略图:

$thumbnail = (string)$media->group->thumbnail[0]->attributes()->url;

然后导入它们:

<img src="<?php echo $thumbnail;?>"/>

youtube API 网站和其他各种问答网站都说您可以使用该变量

yt:name='mqdefault'

要检索没有边框的 16:9 缩略图,但是我不知道在哪里将其合并到 PHP 中?

【问题讨论】:

    标签: php youtube


    【解决方案1】:
    http://img.youtube.com/vi/<insert-youtube-video-id-here>/mqdefault.jpg
    http://img.youtube.com/vi/<insert-youtube-video-id-here>/maxresdefault.jpg
    

    您需要您的网址看起来与其中之一相似。 不确定是什么: (string)$media-&gt;group-&gt;thumbnail[0]-&gt;attributes()-&gt;url; 正在返回,但我会查看该 URL 并确保它类似于上面的内容。

    对于下面的示例,您希望您的 URL 类似于此。

    http://img.youtube.com/vi/0GQPoyMr30o/mqdefault.jpg
    http://img.youtube.com/vi/0GQPoyMr30o/maxresdefault.jpg
    

    尝试做这样的事情:

    <?php 
    $thumbnail = (string)$media->group->thumbnail[0]->attributes()->url;
    $thumbnail = str_replace('0.jpg', 'mqdefault.jpg', $thumbnail);
    ?>
    
    <img src="<?php echo $thumbnail; ?>" />
    

    【讨论】:

    • URL 被返回为:i1.ytimg.com/vi/0GQPoyMr30o/0.jpg,所以我不确定如何删除 0.jpg 并将其更改为 mqdefualt,有什么想法吗?
    • 您是否有权访问媒体变量中的 youtube 视频 ID?
    • 非常感谢使用 $thumbnail = str_replace('0.jpg', 'mqdefault.jpg', $thumbnail);完美运行
    • 没问题。我不是 100% 确定默认情况下它们都是 0.jpg。我会考虑打印出你的 $media 变量,看看你是否有一个 ID 可以使用。然后只需使用上面的 URL 并将 替换为您的 ID。
    猜你喜欢
    • 2012-10-24
    • 2013-10-11
    • 1970-01-01
    • 2012-06-27
    • 2013-10-21
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    • 2016-04-18
    相关资源
    最近更新 更多