CLXXXIV. XSL

Introduction

L'extension XSL implémente le standard XSL, et fait des » transformations XSLT à l'aide de la » bibliothèque libxslt .

Pré-requis

Cette extension utilise la bibliothèque libxslt qui peut être trouvée sur » http://xmlsoft.org/XSLT/ . La bibliothèque libxslt version 1.1.0 ou supérieure est requise.

Installation

PHP 5 inclut l'extension XSL par défaut et peut être activée en ajoutant l'argument --with-xsl[=DIR] à votre ligne de configuration. DIR est le dossier d'installation de la bibliothèque libxslt .

Classes pré-définies

XSLTProcessor

Constructeur

Méthodes

Exemples

Plusieurs exemples dans ce manuel requièrent un fichier XML ainsi qu'un fichier XSL. Nous utiliserons collection.xml et collection.xsl qui contiennent ceci :

Exemple 2827. collection.xml

<collection >
 <cd >
  <title >Fight for your mind</title >
  <artist >Ben Harper</artist >
  <year >1995</year >
 </cd >
 <cd >
  <title >Electric Ladyland</title >
  <artist >Jimi Hendrix</artist >
  <year >1997</year >
 </cd >
</collection >

Exemple 2828. collection.xsl

<xsl:stylesheet version ="1.0" xmlns:xsl ="http://www.w3.org/1999/XSL/Transform" >
 <xsl:param name ="owner" select ="'Nicolas Eliaszewicz'" />
 <xsl:output method ="html" encoding ="iso-8859-1" indent ="no" />
 <xsl:template match ="collection" >
  Hey! Welcome to <xsl:value-of select ="$owner" />'s sweet CD collection!
  <xsl:apply-templates />
 </xsl:template >
 <xsl:template match ="cd" >
  <h1 ><xsl:value-of select ="title" /></h1 >
  <h2 >by <xsl:value-of select ="artist" /> - <xsl:value-of select ="year" /></h2 >
  <hr />
 </xsl:template >
</xsl:stylesheet >

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

XSL_CLONE_AUTO (entier )
XSL_CLONE_NEVER (entier )
XSL_CLONE_ALWAYS (entier )
LIBXSLT_VERSION (entier )
Version libxslt, par exemple : 10117. Disponible depuis PHP 5.1.2.
LIBXSLT_DOTTED_VERSION (chaîne de caractères )
Version libxslt, par exemple : 1.1.17. Disponible depuis PHP 5.1.2.
LIBEXSLT_VERSION (entier )
Version libxslt, par exemple : 813. Disponible depuis PHP 5.1.2.
LIBEXSLT_DOTTED_VERSION (chaîne de caractères )
Version libxslt, par exemple : 1.1.17. Disponible depuis PHP 5.1.2.

Table des matières

XSLTProcessor::__construct — Crée un nouvel objet XSLTProcessor
XSLTProcessor::getParameter — Récupère la valeur d'un paramètre
XSLTProcessor::hasExsltSupport — Indique si PHP utilise EXSLT
XSLTProcessor::importStylesheet — Importe une feuille de style
XSLTProcessor::registerPHPFunctions — Active l'utilisation de PHP dans les feuilles de styles XSLT
XSLTProcessor::removeParameter — Efface un paramètre
XSLTProcessor::setParameter — Définit la valeur d'un paramètre
XSLTProcessor::transformToDoc — Transforme en un document DOM
XSLTProcessor::transformToURI — Transforme en URI
XSLTProcessor::transformToXML — Transforme en XML