XSLT (XSL Transformations) spielt eine wichtige Rolle bei der Transformation und Präsentation von XML-Dokumenten. Die Leistungsfähigkeit, die XSLT für PHP-Anwendungen bietet, lässt sich am besten anhand von Beispielen demonstrieren. Für die Beispiele wurde hier Version 4.3.3 von PHP verwendet. Die beiden ersten Beispiele konzentrieren sich auf die DOM XSLT-Erweiterung und die letzten beiden auf die Sablotron XSLT-Erweiterung. Dabei ist zu bedenken, dass diese Erweiterungen in PHP kompiliert werden müssen, bevor die Beispiele ausgeführt werden können.
Es gibt zwei Beispieldateien, die für alle Beispiele hierin verwendet werden. Zum Einen gibt es in dem Beispielcode eine simple XML-Datei mit dem Namen example.xml, die in Listing A gezeigt wird. Zum Anderen gibt es eine simple XSLT-Datei mit dem Namen example.xslt, die in Listing B gezeigt wird. Die Beispiele setzen voraus, dass diese beiden Beispiele im gleichen Verzeichnis gespeichert werden, in dem auch das Beispiel selbst steht.
Basistransformation
Das erste Beispiel (Listing C) ist eine Demonstration der vier Basisfunktionen, die für eine XSLT-Transformation über die DOM-Erweiterung stattfinden müssen. An dieser Stelle soll der Code einmal genauer betrachtet werden (es wurden auch ein paar Kommentare in das Code-Listing selbst eingefügt).
Viele der DOM XSLT-Funktionen befassen sich mit dem Erstellen, Löschen, und Modifizieren von DomDocument-Objekten. Die erste hier verwendete Funktion ist die Funktion domxml_open_file. Sie erstellt ein DOM-Objekt aus der vorhandenen XML-Datei. Die nächste aufgerufene Funktion ist domxml_xslt_stylesheet_file, die eine neues DomXsltStylesheet-Objekt erstellt. Dieses Objekt wird später bei der Transformation des XML- und XSLT-Dokuments verwendet, durch die der HTML-Output erstellt wird.
Es folgt die Prozessfunktion des DomXsltStylesheet-Objekts. Sie verwendet ein oder mehr Argumente; das erste Argument muss das DomDocument-Objekt sein. Dieses wendet die XSLT-Transformation auf das DomDocument an, das ihm übergeben wird. Der Prozessfunktion können weitere Argumente übergeben werden; dabei kann es sich um zusätzliche XSLT-Parameter (Array) oder Xpath-Parameter (boolesch) handeln. Das schafft Flexibilität für den Transformationsprozess. Die Funktion gibt dann eine DomDocument-Objekt aus, das die transformierten Daten enthält.
Um die transformierten Daten anzuzeigen, liefert die letzte Funktion das Ergebnis und druckt es für den Benutzer aus. Durch Ausführen der Funktion result_dump_mem auf das transformierte DomDocument $domTranObj-Objekt lassen sich der Output oder das Ergebnis der Transformation aufrufen. Hierzu gehört auch ein einfaches Beispiel, wie man eine XSLT-Transformation mit PHP und DOM XSLT durchführt.
Dazu trägt unter der Infostealer Lumma-Stealer bei. Hierzulande dominiert der Infostealer Formbook die Malware-Landschaft.
Eine schwerwiegende Anfälligkeit hebelt die Sicherheitsfunktion Seitenisolierung auf. Betroffen sind Chrome für Windows, macOS und…
DeepL Voice ermöglicht Live‑Übersetzung von Meetings und Gesprächen in 13 Sprachen.
Betroffen sind Windows und Windows Server. Microsoft patcht aber auch Schwachstellen in Excel, Word und…
Es lässt sich um bis zu 50 Prozent dehnen. Allerdings besitzt es eine deutliche geringere…
Allerdings nimmt auch die Resilienz gegenüber Cyberattacken zu. Das BSI hat außerdem die Cybersicherheit anstehender…