(PHP 5, PHP 7, PHP 8)
XSLTProcessor::transformToXml — Transformiert in einen XML-String
Transformiert den Quellknoten in einen String, indem das mittels der Methode XSLTProcessor::importStylesheet() übergebene Stylesheet angewendet wird.
document
Das zu verarbeitende Dom\Document-, DOMDocument-, SimpleXMLElement- oder libxml-kompatible Objekt.
returnClass
Dieser optionale Parameter kann verwendet werden, damit
XSLTProcessor::transformToDoc() ein Objekt der
angegebenen Klasse zurückgibt. Diese Klasse sollte entweder die gleiche
Klasse sein wie die von document
oder diese
erweitern.
The following errors are possible when using an expression that invokes PHP callbacks.
Das Ergebnis der Transformation als String oder false
, falls ein Fehler
aufgetreten ist.
Version | Beschreibung |
---|---|
8.4.0 | Wenn der Callback nicht aufgerufen werden kann, wird nun ein Error ausgelöst, anstatt eine Warnung auszugeben. |
8.4.0 | Unterstützung für Dom\Document hinzugefügt. |
Beispiel #1 Transformation in einen String
<?php
// XML-Quelle laden
$xml = new DOMDocument;
$xml->load('collection.xml');
$xsl = new DOMDocument;
$xsl->load('collection.xsl');
// Transformierenden Prozessor instanziieren und konfigurieren
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // die XSL-Regeln anhängen
echo $proc->transformToXML($xml);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection! <h1>Fight for your mind</h1><h2>by Ben Harper - 1995</h2><hr> <h1>Electric Ladyland</h1><h2>by Jimi Hendrix - 1997</h2><hr>
Beispiel #2 Transformation in einen String mittels Dom\Document
<?php
$xml = Dom\XMLDocument::createFromFile('collection.xml');
$xsl = Dom\XMLDocument::createFromFile('collection.xsl');
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // die XSL-Regeln anhängen
echo $proc->transformToXML($xml);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection! <h1>Fight for your mind</h1><h2>by Ben Harper - 1995</h2><hr> <h1>Electric Ladyland</h1><h2>by Jimi Hendrix - 1997</h2><hr>