Получение превью картинки для видео с YouTube
В ходе Создания сайтов, иногда возникают нестандартные проблемы. Получая опыт, сталкиваясь с различными проблемами, отбирая наиболее интересные, я пишу статьи по их решению специально для Вас!
Сегодня, для одного из моих проектов, или как сейчас модно называть - Стартапов, понадобилась такая вещь, как превью видео с YouTube.
Путешествуя по просторам интернета, я натыкался на множество различных классов и методов. Большинство из них не работают, а некоторые позволяют загрузить превью видео YouTube прямо на сервер (создать файл картинки), что для меня было лишним.
Решение оказалось очень простым. С помощью регулярных выражений получаем ID видео и используя данный ID мы можем сформировать ссылку на превью видео прямо на сервер YouTube.
<? // Можно брать как просто ссылку на видео $video ='http://www.youtube.com/watch?v=0V6I_vfsPtA'; // Так и ссылку с Iframe $video ='<iframe width="854" height="480" src="https://www.youtube.com/embed/0V6I_vfsPtA" frameborder="0" allowfullscreen></iframe>'; if (preg_match('/[http|https]+:\/\/(?:www\.|)youtube\.com\/watch\?(?:.*)?v=([a-zA-Z0-9_\-]+)/i', $video, $matches) || preg_match('/(?:www\.|)youtube\.com\/embed\/([a-zA-Z0-9_\-]+)/i', $video, $matches)) { $image = 'http://img.youtube.com/vi/'.$matches[1].'/0.jpg'; }else{ $image = false; } echo $image; ?>