XSLTProcessor::transformToDoc

Transform to a document

Description

public objectfalse XSLTProcessor::transformToDoc(object $document, stringnull $returnClass = null)

Transforms the source node to a document (e.g. DOMDocument) applying the stylesheet given by the XSLTProcessor::importStylesheet method.

Parameters

document

The Dom\Document, DOMDocument, SimpleXMLElement or libxml-compatible object to be transformed.

returnClass

This optional parameter may be used so that XSLTProcessor::transformToDoc will return an object of the specified class. That class should either extend or be the same class as document's class.

Return Values

The resulting document or false on error.

Changelog

Version Description
8.4.0 Added support for Dom\Document.

Examples

Example #1 Transforming to a DOMDocument

<?php

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

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

// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules

echo trim($proc->transformToDoc($xml)->firstChild->wholeText);

?>

The above example will output:

Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection!

Example #2 Transforming to a 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);

?>

The above example will output:

Hey! Welcome to Nicolas Eliaszewicz's sweet CD collection!

See Also

  • XSLTProcessor::transformToUri
  • XSLTProcessor::transformToXml