(PHP 5, PHP 7, PHP 8)
XSLTProcessor::transformToDoc — Transformiert in ein Dokument
Transformiert den Quellknoten in ein Dokument (z. B. DOMDocument, 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 erzeugte Dokument 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 ein DOMDocument
<?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 trim($proc->transformToDoc($xml)->firstChild->wholeText);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection!
Beispiel #2 Transformation in ein Dom\Document
<?php
$xml = Dom\XMLDocument::createFromFile('collection.xml');
$xsl = Dom\XMLDocument::createFromFile('collection.xsl');
// Transformierenden Prozessor instanziieren und konfigurieren
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
echo trim($proc->transformToDoc($xml)->firstChild->wholeText);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection!