【发布时间】:2023-03-11 14:41:01
【问题描述】:
我想获取我使用此代码的 youtube 视频的 ID:
$url = $video->link;
if (preg_match('/youtube\.com\/watch\?v=([^\&\?\/]+)/', $url, $videoId)) {
$values = $videoId[1];
} else if (preg_match('/youtube\.com\/embed\/([^\&\?\/]+)/', $url, $videoId)) {
$values = $videoId[1];
} else if (preg_match('/youtube\.com\/v\/([^\&\?\/]+)/', $url, $videoId)) {
$values = $videoId[1];
} else if (preg_match('/youtu\.be\/([^\&\?\/]+)/', $url, $videoId)) {
$values = $videoId[1];
}
else if (preg_match('/youtube\.com\/verify_age\?next_url=\/watch%3Fv%3D([^\&\?\/]+)/', $url, $id)) {
$values = $videoId[1];
} else {
// not an youtube video
}
我收到此错误“htmlspecialchars() 期望参数 1 是字符串,给定数组”。错误是当我想要一个字符串时,这段代码给了我一个数组有没有办法以字符串格式获取 youtube 视频的 id?
【问题讨论】:
-
请 dd($videoId[1])
-
array:2 [▼ 0 => "youtube.com/watch?v=Y9oLMvwe4Eg" 1 => "Y9oLMvwe4Eg" ]
-
这是 $videoId 还是 videoId[1]
-
转储问题不在这里