XSLTProcessor::transformToXml

(PHP 5, PHP 7, PHP 8)

XSLTProcessor::transformToXmlTransformer en XML

Description

public XSLTProcessor::transformToXml(object $document): string|null|false

Transforme le nœud source en une chaîne en y appliquant une feuille de style donnée par la méthode xsltprocessor::importStylesheet().

Liste de paramètres

document

Le 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.

Valeurs de retour

Le résultat de la transformation en tant que chaîne de caractères ou false si une erreur survient.

Historique

Version Description
8.4.0 Ajout du support pour Dom\Document.

Exemples

Exemple #1 Transformation en une chaîne

<?php

// Charger la source XML
$xml = new DOMDocument;
$xml->load('collection.xml');

$xsl = new DOMDocument;
$xsl->load('collection.xsl');

// Configurer le transformateur
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attacher les règles XSL

echo $proc->transformToXML($xml);

?>

L'exemple ci-dessus va afficher :

Salut ! Bienvenue dans la superbe collection de CD de Nicolas Eliaszewicz !

<h1>Fight for your mind</h1><h2>par Ben Harper - 1995</h2><hr>
<h1>Electric Ladyland</h1><h2>par Jimi Hendrix - 1997</h2><hr>

Exemple #2 Transformation en une chaîne en utilisant Dom\Document

<?php

$xml
= Dom\XMLDocument::createFromFile('collection.xml');
$xsl = Dom\XMLDocument::createFromFile('collection.xsl');

// Configurer le transformateur
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attacher les règles XSL

echo $proc->transformToXML($xml);

?>

L'exemple ci-dessus va afficher :

Salut ! Bienvenue dans la superbe collection de CD de Nicolas Eliaszewicz !

<h1>Fight for your mind</h1><h2>par Ben Harper - 1995</h2><hr>
<h1>Electric Ladyland</h1><h2>par Jimi Hendrix - 1997</h2><hr>

Voir aussi