PHP调用YouTube API按关键词搜索视频时如何添加显示缩略图?
修改方案
核心原理
你请求YouTube API时已经指定了part=snippet,返回结果中每个视频条目自带完整的缩略图地址,无需额外修改API请求逻辑,只需要调整结果输出部分的代码即可。
修改位置
找到代码底部输出搜索结果的循环段,原代码如下:
foreach ($arr_list->items as $item) { echo "<li>". $item->snippet->title ." (Video ID: ". $item->id->videoId .")</li>"; }
替换为以下代码即可显示缩略图
foreach ($arr_list->items as $item) { echo "<li style='margin:10px 0;display:flex;align-items:flex-start;gap:10px;'>"; // 可选择不同尺寸的缩略图:default(120*90) / medium(320*180) / high(480*360) $thumb = $item->snippet->thumbnails->medium; echo '<img src="'.htmlspecialchars($thumb->url).'" width="'.$thumb->width.'" height="'.$thumb->height.'" alt="'.htmlspecialchars($item->snippet->title).'">'; echo '<div>'.htmlspecialchars($item->snippet->title) ."<br>Video ID: ". $item->id->videoId .'</div>'; echo "</li>"; }
补充说明
- 代码中增加了
htmlspecialchars转义处理,避免特殊字符导致的页面结构异常和XSS安全风险 - 你可以根据需要调整
thumbnails->medium为其他尺寸,适配不同的页面展示需求 - 如果需要点击缩略图跳转播放,给img标签外层套上a标签,地址拼接对应视频ID即可
内容的提问来源于stack exchange,提问作者Faisal Qureshi
相关产品推荐
相关产品推荐

