(PHP 5, PHP 7, PHP 8)
XSLTProcessor::transformToDoc — Transforme en un document
Transforme le nœud source en un document (par ex. DOMDocument) en y appliquant la feuille de style donnée par la méthode XSLTProcessor::importStylesheet().
documentLe Dom\Document, DOMDocument, SimpleXMLElement ou un objet libxml-compatible à transformer.
returnClass
Ce paramètre facultatif peut être utilisé afin que
XSLTProcessor::transformToDoc()
renvoie un objet de la classe spécifiée.
Cette classe doit soit étendre la classe de document,
soit être la même classe que celle de document.
Les erreurs suivantes peuvent survenir lors de l'utilisation d'une expression qui invoque des callbacks PHP.
php:function est utilisée et que le nom du gestionnaire
n'est pas une chaîne de caractères.
Le document résultant ou false si une erreur survient.
| Version | Description |
|---|---|
| 8.4.0 | Lance désormais une Error si le callback ne peut pas être invoqué, au lieu d'émettre un avertissement. |
| 8.4.0 | Ajout du support pour Dom\Document. |
Exemple #1 Transformation en DOMDocument
<?php
// Chargement de la source XML
$xml = new DOMDocument;
$xml->load('collection.xml');
$xsl = new DOMDocument;
$xsl->load('collection.xsl');
// Configuration du transformateur
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attachement des règles xsl
echo trim($proc->transformToDoc($xml)->firstChild->wholeText);
?>L'exemple ci-dessus va afficher :
Salut ! Bienvenue dans la superbe collection de CD de Nicolas Eliaszewicz !
Exemple #2 Transformation en Dom\Document
<?php
$xml = Dom\XMLDocument::createFromFile('collection.xml');
$xsl = Dom\XMLDocument::createFromFile('collection.xsl');
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
echo trim($proc->transformToDoc($xml)->firstChild->wholeText);
?>L'exemple ci-dessus va afficher :
Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection!