【发布时间】:2015-05-08 01:30:34
【问题描述】:
我正在尝试使用 API v3 获取 YouTube 缩略图和视频 ID,并将它们回显到 HTML 中,但是我需要同时回显两个变量。目前我有以下内容:
<?php
$url = 'https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&maxResults=12&playlistId=UUDWdi7vjr3ac_z_VMMeiL_Q&key=*************************';
$data = file_get_contents($url);
if ((preg_match_all("/\"videoId\":\s*\"(.+)\"/", $data, $video_get) ) && (preg_match_all("/\"title\":\s*\"(.+)\"/", $data, $title_get) ) ) {
foreach (($video_get[1] as $videoid) && foreach ($title_get[1] as $title ) ){
echo ("<div id=\"video-thumb\" class=\"col-sm-6\"><img id=\"video-thumb-320180\" src=\"https://i.ytimg.com/vi/'.$videoid.'/mqdefault.jpg\"><div class=\"video-hover\"><img class=\"play-hover\" src=\"images/play.png\"></div><h2 class=\"video-title\"><i><a href=\"https://youtube.com/watch?v='.$videoid.'\">'.$title.'</a></h2></i></div>");
}
}
else {
echo ("Error fetching uploads!")
}
?>
但是,在尝试了这个之后,我似乎无法将 foreach 用作 && foreach as。这里有什么解决办法?
【问题讨论】:
-
查看
file_get_contents()输出的样本会有所帮助。 -
不可能。尝试使用嵌套循环
-
实际上,该 API 返回 JSON。你不需要
preg_match任何东西。只需使用json_decode()。 -
如对其他答案的评论所述。我对 PHP 很陌生。 json 格式对我有何帮助?如何从中获取视频和标题元素?
标签: php youtube-data-api