Da die komplette Ausgabe-Logik zum Erstellen der Ausgabeseiten im XSLT-Template hinterlegt bzw. vom XSLT-Prozessor übernommen wird, braucht es sehr wenig PHP um die Seiten zu rendern.
Der eigentliche Programmcode, beschränkt sich im Wesentlichen auf diese paar Zeilen:
X
<?php
// laden des XSLT Stylesheet als regulaere XML Datei via DOM
$xslDom = new domdocument;
$xslDom->load($xsl_file);
// laden der XML-Daten Datei via DOM
$xmlDom = new domdocument;
// $xmlDom->resolveExternals = true;
$xmlDom->load($xml_src);
// initialisieren des XSLT Processors
$xslt = new XsltProcessor;
// Optional: registrieren von PHP-Funktions im XSL
$xslt->registerPhpFunctions();
// Ausgabeverzeichnis als Parameter fuer das XSL setzen
$xslt->setParameter('', 'outdir', $outdir);
// PHP XSLT Processors als Parameter fuer das XSL setzen um darin die
// optionalen Funktionen zu nutzen.
// PHP braucht das nicht, aber wenn das XSL-Template auch mit anderen
// XSLT-Prozessoren genutzt werden soll, muss vor der Verwendung eine
// Abfrage rein, denn nur PHP kennt die PHP-Funktionen.
$xslt->setParameter('', 'xsltproc', 'php');
// XSL-Stylesheet importieren
$xslt->importStylesheet($xslDom);
// Transformation ausfuehren -> return XML/HTML
$xslt->transformToXML($xmlDom);
?>