Une version plus récente de cet article existe (mai 2019).
La fonction attend trois paramètres (dont 2 facultatifs) :
- $aUrl : l'adresse de la vidéo.
- $aWidth : la largeur du lecteur en pixels (640 par défaut).
- $aHeight : la hauteur du lecteur en pixels (360 par défaut).
// 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>