Récupérer les miniatures d'une vidéo youtube

Contenu du snippet

Le code est simple, il permet depuis une url youtube de récupérer son identifiant et de se connecter au serveur de miniatures pour en récupérer les images générées.

Source / Exemple :


<?php

function youtubeId($source){
	$parsed_url = parse_url($source);
	
	// deux manières de procéder (merci Google :/)
	
	if (strpos($parsed_url['query'], "v=") === false) {
		// la nouvelle, qui est placé comme un repertoire
		$query = $parsed_url[path]; 
		
		$debut = strpos($query, "v/")+2; 
		
		$temp = substr($query, $debut, strlen($query));
		$pos = strpos($temp, "/");
		$fin = ($pos === false)?strlen($query):$pos; 
		
		$youtubeId = substr($query, $debut, $fin);
		
	} else {
		// l'ancienne, avec l'id dans les paramètres
		$query = $parsed_url[query];
		parse_str($query, $output);
		
		$youtubeId =  $output['v'];
	}
	
	return $youtubeId;
}

function get_thumbs($youtubeId) {
	echo '<img class="videoThumb" src="http://i.ytimg.com/vi/'.$youtubeId.'/default.jpg" alt="Scelen Concept - Organisateur de soirées et événement" width="120" height="90" />';
	echo '<img class="videoThumb" src="http://i.ytimg.com/vi/'.$youtubeId.'/1.jpg" alt="Scelen Concept - Organisateur de soirées et événement" width="120" height="90" />';
	echo '<img class="videoThumb" src="http://i.ytimg.com/vi/'.$youtubeId.'/2.jpg" alt="Scelen Concept - Organisateur de soirées et événement" width="120" height="90" />';
	echo '<img class="videoThumb" src="http://i.ytimg.com/vi/'.$youtubeId.'/3.jpg" alt="Scelen Concept - Organisateur de soirées et événement" width="120" height="90" />';
}

$url = "http://www.youtube.com/v/aZjbxg_bm3g?fs=1&amp;hl=fr_FR";

$youtubeId = youtubeId($url);

get_thumbs($youtubeId);

?>

Conclusion :


Point de magie, il ne s'agit que d'un traitement d'une chaine de caractères.
J'aurai pu le faire aussi en javascript mais j'avais besoin de ces fonctions pour l'intégrer dans une classe.

Ce code permet de faire sa playlist sans passer par youtube, à voir si c'est vraiment utile :/

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.