miércoles, 18 de junio de 2014

Obtener los videos de Youtube con PHP

Nos pasa que tenemos que mostrar los videos de un canal de Youtube y tener un script a la mano es lo mejor que nos puede pasar.

Para esto usaremos la funcion curl pero ligeramente modificada para nuestro propósito.
function curl_get_contents($url) {
    // Iniciamos la sesión curl
    $ch = curl_init();
    // seteamos la url
    curl_setopt($ch, CURLOPT_URL, $url);
    // Removemos las cabeceras de la salida
    curl_setopt($ch, CURLOPT_HEADER, 0);
    // Retornamos la salida en lugar de mostrarla directamente
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 //seteamos el timeout
 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 1);
    // ejecutamos la sesión curl
    $output = curl_exec($ch);
    // cerramos la sesión
    curl_close($ch);
    // Retornamos la salida como una variable
    return $output;
}

Luego usamos nuestra función asi:

$feed = curl_get_contents("http://gdata.youtube.com/feeds/api/users/nombredeusuarioaqui/uploads?orderby=updated");
$xml = new SimpleXmlElement($feed);
 
$count = count($xml->entry);
for ($i=0; $i < 10; $i++) { 
 $url = $xml->entry[$i]->link->attributes();
 $videourl = explode("&",$url['href']);
 $video = str_replace("http://www.youtube.com/watch?v=","",$videourl[0]);
 
 echo '

'.$xml->entry[$i]->title.'

'; echo '

Posteado el '.date('jS M Y h:i:s', strtotime($xml->entry[$i]->published)).'

'; echo '

'; echo '

'.$xml->entry[$i]->content.'

'; echo '

Ver en Youtube

';

Espero les sea de utilidad!

0 comentarios:

Publicar un comentario