3Fermer5
juddhumLe 14/04/2010 à 13:32
Un exemple orienté purement "fonctionnel", mais par la suite, je vais normaliser tout ça, rajouter les autres médias, faire une classe.
<?php $media=InsereMedia("http://www.dailymotion.com/video/xcw00q_solidarites-international_creation#hp-v-v6"); $media=InsereMedia("http://www.youtube.com/watch?v=gemhif9wZgw&feature=related"); $media=InsereMedia("http://www.vimeo.com/6631139"); function InsereMedia($url="") { if($url=="") { echo "Arghhh !"; } elseif(preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url)) { preg_match("/^(http:\/\/)?([^\/]+)/i",$url,$chaines); $d=explode(".",$chaines[2]); $hote=$d[count($d)-2].".".$d[count($d)-1]; switch($hote) { case "youtube.com" : Media_Youtube($url); break; case "dailymotion.com" : Media_Dailymotion($url); break; case "vimeo.com" : Media_Vimeo($url); break; default : echo "Arghhh !"; } } else { echo "URL non valide"; } } function Media_Youtube($url) { echo "Youtube : ".$url."<br />"; $id=eregi("v=([a-z0-9_-]*)",$url,$ytid); $id=str_replace("v=","",$ytid[0]); echo "ID : ".$id."<br />"; echo "Vignette :<br />"; echo "<img border=\"0\" src=\"http://i4.ytimg.com/vi/".$id."/hqdefault.jpg\"><br />"; $xml=simplexml_load_file("http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=".$id."&format=xml"); if($xml) { $titre= htmlentities(utf8_decode($xml->title)); echo "Titre : ".$titre."<br />"; echo $xml->html; } } function Media_Dailymotion($url) { echo "Dailymotion : ".$url."<br />"; $n=explode("#",$url); $x=$n[0]; $xml=simplexml_load_file("http://www.dailymotion.com/api/oembed?url=".$x."&format=xml"); if($xml) { $titre= htmlentities(utf8_decode($xml->title)); echo $titre."<br />"; echo "<img border='0' width='".$xml->thumbnail_width."' height='".$xml->thumbnail_height."' src='".$xml->thumbnail_url."'><br />"; $c=explode("<br />",utf8_decode($xml->html)); echo $c[0]; } } function Media_Vimeo($url) { echo "Vimeo : ".$url."<br />"; $xml=simplexml_load_file("http://vimeo.com/api/oembed.xml?url=".$url); if($xml) { $titre=htmlentities(utf8_decode($xml->title)); echo $titre."<br />"; echo "<img border='0' width='".$xml->thumbnail_width."' height='".$xml->thumbnail_height."' src='".$xml->thumbnail_url."'><br />"; $c=explode("<br />",utf8_decode($xml->html)); echo $c[0]; } } ?>