【问题标题】:Be Able To Post Only YouTube Videos Under 2 Minutes只能在 2 分钟内发布 YouTube 视频
【发布时间】:2013-07-13 04:10:00
【问题描述】:

网站有什么方法可以让用户只嵌入短的 youtube 视频。假设 2 分钟或更短。

因此,当他们尝试嵌入 youtube 视频时,如果超过 2 分钟,他们会收到一条错误消息,告诉他们“您的视频太长,请选择另一个”等...

这可能吗?

为了清楚起见,我不想编辑 youtube 视频的长度,只是禁止用户发布太长的视频。

非常感谢。

【问题讨论】:

  • 您也许可以使用 youtube api 来获取视频长度 - 但我只是在这里猜测

标签: php javascript joomla youtube


【解决方案1】:

这里可以帮助您入门:

基础 api URL 是http://gdata.youtube.com/feeds/api/videos/VIDEO_ID?v=2&alt=json

<?php

$video_data = json_decode(file_get_contents("http://gdata.youtube.com/feeds/api/videos/a_kAUiJwRs0?v=2&alt=json"),true);

echo $video_data['entry']['title']['$t']." is ".$video_data['entry']['media$group']['yt$duration']['seconds']." seconds long.";

输出:

Love, Fate, Love - Final Approach ED Single Love, Fate, Love Original Soundtrack is 283 seconds long.

a_kAUiJwRs0 替换为您的视频 ID。您可以在$video_dataprint_r 以查看您获得的所有值。

获得他们的视频 ID 后,您可以检查其持续时间(以秒为单位)是长于还是短于 120 秒,并据此拒绝或接受。

我建议阅读this 以查看视频回复。 (您可以随时var_dump 确切地查看它返回的内容)

【讨论】:

    【解决方案2】:

    您可以从以下位置获取 XML 数据:

    http://gdata.youtube.com/feeds/api/videos/{$videoId}
    

    其中包括持续时间。只需检查是否超过 120 秒

    【讨论】:

    • 嗨 - 谢谢 - 此数据是否适用于所有视频。我没有 youtube api 经验。谢谢
    • 如果您看到我的回答,您就拥有了响应中的所有数据。可以通过entry-&gt;media$group访问,你可能想使用JSON并使用关联数组。
    猜你喜欢
    • 2015-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多