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 » https://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
-
XSLTProcessor::__construct - construit un nouvel objet XSLTProcessor
Méthodes
-
XSLTProcessor::getParameter - Récupère la valeur d'un paramètre
-
XSLTProcessor::hasExsltSupport - Détermine si PHP a le support EXSLT
-
XSLTProcessor::importStylesheet - Importe une feuille de style
-
XSLTProcessor::registerPHPFunctions - Active la possibilité d'utiliser les fonctions PHP comme fonctions XSLT
-
XSLTProcessor::removeParameter - Efface un paramètre
-
XSLTProcessor::setParameter - Défini la valeur d'un paramètre
-
XSLTProcessor::transformToDoc - Transforme en un DOMDocument
-
XSLTProcessor::transformToURI - Transforme en une URI
-
XSLTProcessor::transformToXML - Transforme en du XML
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 :
Example#1 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>
Example#2 collection.xsl
<xsl:stylesheet version="1.0" xmlns:xsl="https://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 of Contents
- 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