PHP:检查ID是否来自Vimeo或YouTube

Joh*_*ter 0 php youtube vimeo

PHP 中是否可以区分 Vimeo ID (129565826) 和 YouTube ID (Bo3bkdYHp_M) 之间的区别?它们都有很大不同,但不确定 PHP 知道差异的最佳方法是什么?如果我使用完整的 URL,我可以这样做:

if (stripos($url,'youtube.com') === false) {
    //must be vimeo
} else {
    //is youtube
}
Run Code Online (Sandbox Code Playgroud)

有什么想法或帮助吗?也许我可以用is_numeric

谢谢,R

spe*_*bus 5

关于 YouTube 视频 id

来自 YouTube 工作人员:

我们不对视频 ID 的格式做出任何公开保证。

如果您需要验证随机用户输入是否对应于有效的视频 ID,我建议您进行实证测试。尝试访问http://gdata.youtube.com/feeds/api/videos/VIDEO_ID

摘自这个答案: https:
//webapps.stackexchange.com/a/54448
引用此来源:
https://groups.google.com/forum/#!msg /youtube-api-gdata/maM-h-zKPZc/ PJDlDWv77TEJ

关于 Vimeo 视频 id

对于这个问题:

Vimeo 标识永远都是纯粹的数字吗?

vimeo工作人员回答:

视频 ID 始终是一个数值,我们在不久的将来没有计划更改网站的这一基本构建块:)

来源: https: //vimeo.com/forums/api/topic :267078

结论

  • 非数字 ID 不能指向 Vimeo 视频。
  • 没有可靠的方法来确保数字 ID 属于一项服务或另一项服务。

最好的机会是查询每个服务的 API,以使用请求的 ID 检查视频是否存在。