1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| <?
$xh = xslt_create();
xslt_set_base ($xh, 'file://' . getcwd () . '/');
if ($url=="") {$url='http://api.allocine.fr/xml/movie?code=182097&media=mp4-lc&partner=YW5kcm9pZC12Mg&profile=large&version=2';}
$xml=fileTostring($url); // créer une chaine à partir du contenu envoyé par l'url transmise
$xml=preg_replace('#xmlns="(.*)"#','',$xml); //retire toute les occurence de xmlns="..." (http://fr2.php.net/manual/fr/function.preg-replace.php http://www.php.net/manual/fr/regexp.reference.meta.php)
uplod ($xml,"outfile.xml"); // créer un fichier à partir de la chaine $xml nettoyée
$result = xslt_process($xh,'outfile.xml', 'xsltalo3.xsl');
if (!$result)
echo ("Erreur XSLT ...");
else
echo ($result);
// Détruit le processeur XSLT
xslt_free($xh);
function fileTostring($url)
{
$url=urlencode($url); // !! Là je ne doit pas avoir tout bon sur l'encodage de l'url !!
echo $url;
$fp = fopen($url,"r"); //lecture du fichier
$page="";
if ($fp){
while (!feof($fp)){
//on parcoure toutes les lignes
$page .= @fgets($fp, 4096); // lecture du contenu de la ligne
}
fclose ($fp);
}
else{
echo "Page innacessible";
}
return $page;
}
function uplod($strin,$urlout){
if ($urlout==""){$urlout="outfile.xml";} // si on ne veut pas toujours préciser $urlout
$file = fopen ("".$urlout, "w");
if (!$file) {
echo "<p>Unable to open remote file for writing.\n";
exit;
}
fwrite ($file, $strin);
fclose ($file);
}
?> |
Partager