我需要一些帮助来纠正我在 php 中的代码 - 如何从 YouTube URL 获取视频 ID [重复]
Posted
技术标签:
【中文标题】我需要一些帮助来纠正我在 php 中的代码 - 如何从 YouTube URL 获取视频 ID [重复]【英文标题】:I need some help in correcting my codes in php - How to get the video id from a YouTube URL [duplicate] 【发布时间】:2020-10-06 22:30:32 【问题描述】:我想从 URL 获取 youtube 视频 ID,但 YouTube 有许多不同的 URL 模式。我从其中一种模式(https://www.youtube.com/watch?v=4Wm6-8X3Vq4)中获取缩略图,但无法从这种类型的 URL(https://youtu.be/HCjNJDNzw8Y)获取缩略图,这是我的代码。我希望这段代码对这两个 URL 都有效。请帮忙!
if (isset($_POST["Submit"]))
$url = $_POST["url"];
$value = explode('v=', $url);
$videoId = $value[1];
?>
【问题讨论】:
有多少种 youtube 视频 URL 插入数据库? 为什么不用google apis php客户端库? 【参考方案1】:我们知道视频 ID 是 11
字符长度,并且可以在前面加上 v=
或 vi=
或 v/
或 vi/
或 youtu.be/
所以最简单的方法是:-
PHP 代码:-
<?php
if(isset($_POST["Submit"]))
$url = $_POST["url"];
preg_match_all("#(?<=v=|v\/|vi=|vi\/|youtu.be\/)[a-zA-Z0-9_-]11#", $url, $matches);
echo $matches[0][0];
?>
HTML 表格:-
<form method="post">
<input type="text" name="url"><br>
<input type="submit" name="Submit">
</form>
【讨论】:
非常感谢。它现在正在工作。 请标记为已接受的答案,以便其他人可以使用此代码。以上是关于我需要一些帮助来纠正我在 php 中的代码 - 如何从 YouTube URL 获取视频 ID [重复]的主要内容,如果未能解决你的问题,请参考以下文章