Logo classes.scriptsphp.org PHP

go to nav bar

XSLT

Application d' une feuille de style XSLT à un document XML.

Cette classe permet d' appliquer une feuille de style XSLT à un document XML. La transformation peut être effectuée de différentes manières : soit en utilisant les extensions que PHP fournit : php-XSLT ou php-DOMXML-XSLT, soit en ligne de commande avec SABLOTRON, XALAN ou XSLTPROC. L' implementation de ces processeurs n' étant pas forcement la meme, certains exemples peuvent poser problème selon votre version de SABLOTRON ou de XALAN, notemment les exemples 3 et 4 qui utilisent des espaces de noms apparemment pas encore supportés sur mes versions de TEST (SABLOTRON 0.98).

Les Méthodes

Exemples

  1. Fichier XML de référence
  2. Exemple 1-1 Affichage simple (code PHP)
  3. Exemple 1-2 Affichage simple (feuille XSLT)
  4. Exemple 2-1 Ajout de quelques variables + TRI par date (code PHP)
  5. Exemple 2-2 Ajout de quelques variables + TRI par date (Feuille XSLT)
  6. Exemple 3-1 Formatage de la date - Affichage Jours,Mois en toutes lettres (code PHP)
  7. Exemple 3-2 Formatage de la date - Affichage Jours,Mois en toutes lettres (Feuille XSLT 1)
  8. Exemple 3-3 Formatage de la date - Affichage Jours,Mois en toutes lettres (Feuille XSLT 2)
  9. Exemple 4-1 Alternance des couleurs dans la liste (code PHP)
  10. Exemple 4-2 Alternance des couleurs dans la liste (feuille XSLT)

Description des Méthodes

Nouvelle Instance

XSLT( [ string Extension ] )

Nouvelle Instance de la Classe. Initialise les variables membres de la classe et permet optionnellement de choisir l' extension de PHP à utiliser. Si aucune extension n' est spécifiée, il faudra effectuer la transformation en ligne de commande.

  • Extension : Spécifie l' extension à utilisé. Possibilité :: xslt ou domxml.
  • $xml = new XSLT;
  • $xml = new XSLT('xslt');
  • $xml = new XSLT('domxml');

go to the top
Charger un fichier XML à partir d' un fichier

Load_XML_from_file( string File )

Charge un document XML à partir d' un fichier. Cette methode utilise file_get_contents() , disponible en PHP >= 4.3 .

  • File : Le fichier XML à charger.
  • $xml -> Load_XML_from_file( 'http://cool.net/fichier.xml' );

go to the top
Charger un fichier XML à partir d' une chaine

Load_XML_from_str( string Str )

Charge un document XML à partir d' une chainee.

  • Str : Le fichier XML à charger.
  • $xml -> Load_XML_from_str( ' votre chaine ' );

go to the top
Charger la template XSLT à partir d' un fichier

Load_XSL_from_file( string File )

Charge une template XSLT à partir d' un fichier. Cette methode utilise file_get_contents() , disponible en PHP >= 4.3 .

  • File : La template XSLT à charger.
  • $xml -> Load_XSL_from_file( 'http://cool.net/fichier.xsl' );

go to the top
Charger la template XSLT à partir d' une chaine

Load_XSL_from_str( string Str )

Charge une template XSLT à partir d' une chaine.

  • Str : La template XSLT à charger.
  • $xml -> Load_XSL_from_str( 'votre chaine' );

go to the top
Définir l' encodage

Set_encoding( string Encoding )

Fixe l' encodage de sortie. Ne fonctionne qu' avec l' extension XSLT.

  • Encoding : L' encodage.
  • $xml -> Set_encoding( 'ISO-8859-2' );
  • $xml -> Set_encoding( 'UTF-8' );

go to the top
Passer un parametre à la template XSLT

Add_XSL_parameter( string Name , string Value )

Ajoute un parametre qui sera passé a la template XSLT. Recuperez ce parametre dans le top-level de la feuille de style avec un : <xsl:param name="Name"/>

  • Name : Le nom du parametre.
  • Value : La valeur du parametre.
  • $xml -> Add_parameter( 'limit', 10 );

go to the top
Affichage du résultat

Output( )

Retourne le résultat de la transformation.

  • echo $xml -> Output();

go to the top
Transformation avec XSLTPROC en ligne de commande

XSLTPROC_shell_transform( string XSLfile , string XMLfile [, array Params ] )

Effectue une transformation en ligne de commande avec le processeur XSLTPROC. Pensez à configurer l' URL vers votre processeur dans les variables membres de la classe , la valeur par defaut est /usr/bin/xsltproc .

  • XSLfile : L' URL vers le fichier XSL.
  • XMLfile : L' URL vers le fichier XML.
  • Params : Optionnel. Array contenant les parametres à passer à la template.
  • echo $xml -> XSLTPROC_shell_transform( 'fichier.xsl' , 'fichier.xml' );
  • echo $xml -> XSLTPROC_shell_transform( 'fichier.xsl' , 'fichier.xml' , array('name' => 'value') );

go to the top
Transformation avec SABLOTRON en ligne de commande

SABLOTRON_shell_transform( string XSLfile , string XMLfile [, array Params ] )

Effectue une transformation en ligne de commande avec le processeur SABLOTRON. Pensez à configurer l' URL vers votre processeur dans les variables membres de la classe , la valeur par defaut est /usr/bin/sabcmd .

  • XSLfile : L' URL vers le fichier XSL.
  • XMLfile : L' URL vers le fichier XML.
  • Params : Optionnel. Array contenant les parametres à passer à la template.
  • echo $xml -> SABLOTRON_shell_transform( 'fichier.xsl' , 'fichier.xml' );
  • echo $xml -> SABLOTRON_shell_transform( 'fichier.xsl' , 'fichier.xml' , array('name' => 'value') );

go to the top
Transformation avec XALAN en ligne de commande

XALAN_shell_transform( string XSLfile , string XMLfile [, array Params ] )

Effectue une transformation en ligne de commande avec le processeur XSLTPROC. Pensez à configurer l' URL vers votre processeur dans les variables membres de la classe , la valeur par defaut est /usr/bin/testXSLT . J' ai utilisé la version xalan-c pour les tests, sachez qu' il existe une version JAVA xalan-j

  • XSLfile : L' URL vers le fichier XSL.
  • XMLfile : L' URL vers le fichier XML.
  • Params : Optionnel. Array contenant les parametres à passer à la template.
  • echo $xml -> XALAN_shell_transform( 'fichier.xsl' , 'fichier.xml' );
  • echo $xml -> XALAN_shell_transform( 'fichier.xsl' , 'fichier.xml' , array('name' => 'value') );

go to the top

Merci de ne pas suivre ce lien emails.

0.0800s | «»
PHP powered