Bonjour à tous.

[si vous pensez que cette discussion aurait plus sa place dans la section PHP de ce forum, merci de me le faire savoir]


J'ai PHP 5.3.4 sur mon serveur local.
Je voudrais utiliser un processeur XSLT en PHP pour générer du HTML à partir d'un document XML et d'une feuille de style XSL.

J'ai suivi deux tutoriels :
http://bob.developpez.com/phpxslt/
http://haypo.developpez.com/tutoriel/xml/xslt/#LII.A

En résumé, voici les deux scripts que j'ai testés, sans succès :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
<?php
$xh = xslt_create();
 
$file=fopen("list.xml","r");
$xml=fread($file,16384);
fclose($file);
 
$file=fopen("style.xsl","r");
$xsl=fread($file,16384);
fclose($file);
 
$arguments = array(
  '/_xml' => $xml,
  '/_xsl' => $xsl
  );
 
$result = xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', NULL, $arguments);
 
xslt_free($xh);
 
print "$result";
?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<?
// Crée le processeur XSLT
$xh = xslt_create();
xslt_set_base ($xh, 'file://' . getcwd () . '/');
 
// Traite le document, puis affiche le résultat
$result = xslt_process($xh, 'liste.xml', 'style.xsl');
if (!$result)
  echo ("Erreur XSLT ...");
else
  echo ($result);
 
// Détruit le processeur XSLT
xslt_free($xh);
?>
Comme dit plus haut, aucun des deux scripts n'a fonctionné.
Je n'ai même pas pu détecter d'erreur malgré l'ajout en début de code de
Code : Sélectionner tout - Visualiser dans une fenêtre à part
error_reporting(E_ALL);
Pourquoi est-ce que ça ne fonctionne pas ?
J'ai essayé avec des .XML et .XSL vraiment basiques, et même avec ceux proposés dans le premier tuto: rien à faire. Je désespère de pouvoir générer proprement du HTML de cette manière.

Si vous avez une idée pour m'aider, vous êtes mon sauveur.