Image de l'article Convertir une url Youtube, Dailymotion, Vimeo en lecteur HTML avec PHP

Convertir une url Youtube, Dailymotion, Vimeo en lecteur HTML avec PHP

Une version plus récente de cet article existe (mai 2019).

La fonction attend trois paramètres (dont 2 facultatifs) :


// renvoi un lecteur d'après une url de vidéo
function VidProviderUrl2Player($aUrl, $aWidth=640, $aHeight=360){
	$h = '';
	if(strpos($aUrl, 'youtube') !== false){
		// youtube
		$d = strpos($aUrl, 'v=');
		if($d === false) break;
		$vid = substr($aUrl, $d+2);
		$h = '<iframe width="'.$aWidth.'" height="'.$aHeight.'" src="https://www.youtube.com/embed/'.$vid.'" frameborder="0" allowfullscreen></iframe>';

	}elseif(strpos($aUrl, 'youtu.be') !== false){
		// youtu.be
		$d = strpos($aUrl, 'youtu.be/');
		if($d === false) break;
		$vid = substr($aUrl, $d+9);
		$h = '<iframe width="'.$aWidth.'" height="'.$aHeight.'" src="https://www.youtube.com/embed/'.$vid.'" frameborder="0" allowfullscreen></iframe>';

	}elseif(strpos($aUrl, 'vimeo') !== false){
		// vimeo
		$d = strpos($aUrl, 'vimeo.com/');
		if($d === false) break;
		$vid = substr($aUrl, $d+10);
		$h = '<iframe src="https://player.vimeo.com/video/'.$vid.'" width="'.$aWidth.'" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>';

	}elseif(strpos($aUrl, 'dailymotion') !== false){
		// dailymotion
		$d = strpos($aUrl, 'video/');
		if($d === false) break;
		$f = strpos($aUrl, '_', $d);
		$vid = substr($aUrl, $d+6, $f-$d-6);
		$h = '<iframe frameborder="0" width="'.$aWidth.'" height="'.$aHeight.'" src="//www.dailymotion.com/embed/video/'.$vid.'" allowfullscreen></iframe>';

	}elseif(strpos($aUrl, 'dai.ly') !== false){
		// dailymotion
		$d = strpos($aUrl, 'dai.ly/');
		if($d === false) break;
		$vid = substr($aUrl, $d+7);
		$h = '<iframe frameborder="0" width="'.$aWidth.'" height="'.$aHeight.'" src="//www.dailymotion.com/embed/video/'.$vid.'" allowfullscreen></iframe>';
	}
	return (empty($h) ? $aUrl:$h);
}

Exemple d'utilisation avec une url Youtube ou youtu.be


echo VidProviderUrl2Player('https://www.youtube.com/watch?v=A3PDXmYoF5U');
echo VidProviderUrl2Player('https://youtu.be/j_ZXcT7eBhA');

<iframe width="640" height="360" src="https://www.youtube.com/embed/A3PDXmYoF5U" frameborder="0" allowfullscreen></iframe>
<iframe width="640" height="360" src="https://www.youtube.com/embed/j_ZXcT7eBhA" frameborder="0" allowfullscreen></iframe>

Exemple d'utilisation avec une url Dailymotion ou dai.ly


echo VidProviderUrl2Player('http://www.dailymotion.com/video/x1asi5u_le-skate-moderne-kloudbox_sport');
echo VidProviderUrl2Player('http://dai.ly/x2v47l0');

<iframe frameborder="0" width="640" height="360" src="//www.dailymotion.com/embed/video/x1asi5u_" allowfullscreen></iframe>
<iframe frameborder="0" width="640" height="360" src="//www.dailymotion.com/embed/video/x2v47l0" allowfullscreen></iframe>

Exemple d'utilisation avec une url Vimeo


echo VidProviderUrl2Player('https://vimeo.com/184065357');

<iframe src="https://player.vimeo.com/video/184065357" width="640" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

Article précédent : Débuter avec AMP (Accelerated Mobile Page)

Article suivant : Mise à jour de jsPhotoViewer

 

Image Viewer