XSLTProcessor::transformToDoc

(PHP 5, PHP 7, PHP 8)

XSLTProcessor::transformToDocTransformiert in ein Dokument

Beschreibung

public XSLTProcessor::transformToDoc(object $document, ?string $returnClass = null): object|false

Transformiert den Quellknoten in ein Dokument (z. B. DOMDocument, indem das mittels der Methode XSLTProcessor::importStylesheet() übergebene Stylesheet angewendet wird.

Parameter-Liste

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.

Rückgabewerte

Das erzeugte Dokument oder false, falls ein Fehler aufgetreten ist.

Changelog

Version Beschreibung
8.4.0 Unterstützung für Dom\Document hinzugefügt.

Beispiele

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!

Siehe auch