Como mostrar una thumbnail de un video de youtube con PHP

En este tutorial crearemos una función PHP que nos permitirá mostrar las thumbnails de nuestros videos de Youtube con solamente colocar la URL.

LIMPIANDO LA URL DE YOUTUBE

Lo primero que haremos con la función será limpiar la url del video, ya que lo único que necesitamos de ella es el id.

Para ello, vamos a utilizar la función preg_replace() de PHP dos veces. La primera será para eliminar desde el comienzo de la URL — http://www.youtube.com/ — hasta donde se encuentra el id de Youtube. La segunda será solo por si hay más variables en la URL.

La función

Por la función pasaremos dos datos del tipo string, el primero será la URL del video y la segunda (opcional) es el tamaño de thumbnail que queremos mostrar, si no la llenan quedará el tamaño por defecto que es default.

<?php
function show_thumbnail_bydinvaders($url, $size = 'default')
{
 $url = preg_replace('/(.*?).(v=)/', '', $url);
 $url = preg_replace('/(&.*?)$/', '', $url);
 echo '<img src="http://img.youtube.com/vi/' . $url . '/' . $size . '.jpg" alt="" />';
}
?>

Viendo los tamaños de la thumbnail

Youtube nos proporciona 3 thumbnails de 120px de ancho por 90px de alto en diferentes frames, que los invocaremos con 1, 2, 3.

Por ejemplo si quiero mostrar la opción 3 lo mostraría así: show_thumbnail_bydinvaders('http://www.youtube.com/watch?feature=endscreen&v=DkeCqmBz1mY&NR=1', 3);

Después tenemos las opciones hqdefault (High quality) que las medidas son de 480px de ancho por 360px de alto y mqdefault (Medium quality) que mide 320px de ancho por 180px de alto.

Si quisiéramos mostrar mqdefault deberíamos escribirlo así: show_thumbnail_bydinvaders('http://www.youtube.com/watch?feature=endscreen&v=DkeCqmBz1mY&NR=1', 'mqdefault');

Posted in PHP
Scroll to top