PHP - Función XSLTProcessor :: transformToXml ()

Definición y uso

XML es un lenguaje de marcado para compartir los datos a través de la web, XML es legible tanto para humanos como para máquinas. La extensión XSL es una implementación del estándar XSL para realizar la transformación XSTL utilizando la biblioteca libxslt.

los XSLTProcessor::transformToXml() La función acepta un objeto de la clase DOMNode como parámetro y lo transforma en una cadena aplicándole una hoja de estilo.

Sintaxis

XSLTProcessor::transformToXml($doc);

Parámetros

No Señor Descripción de parámetros
1

doc(Mandatory)

Este es un objeto de la clase DOMNode que representa el documento que se va a transformar.

Valores devueltos

Esta función devuelve un valor de cadena que representa el resultado de la transformación en caso de éxito y un valor booleano que es FALSO en caso de falla.

Versión PHP

Esta función se introdujo por primera vez en PHP Versión 5 y funciona en todas las versiones posteriores.

Ejemplo

A continuación se muestra un ejemplo de esta función:

sample.xml:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="example.xsl"?>
<Tutorial>
   <Title>JavaFX</Title>
   <Authors>
      <Author>Krishna</Author>
      <Author>Rajeev</Author>
   </Authors>
   <Body>Sample text</Body>
</Tutorial>

sample.xsl:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:output method="text"/>

   <xsl:template match="/">
      Title - <xsl:value-of select="/Tutorial/Title"/>
      Authors: <xsl:apply-templates select="/Tutorial/Authors/Author"/>
   </xsl:template>

   <xsl:template match="Author">
      - <xsl:value-of select="." />
   </xsl:template>
</xsl:stylesheet>

sample.php:

<?php
   //Loading an XSL document
   $xsl = new DOMDocument();
   $xsl->load("sample.xsl");

   //Loading an XML document
   $xml = new DOMDocument();
   $xml->load("sample.xml");

   //Creating an XSLTProcessor
   $proc = new XSLTProcessor();

   //Importing the XSL document
   $proc->importStyleSheet($xsl);

   //Transforming the style to XML
   $res = $proc->transformToXml($xml);
   print($res);
?>

Esto producirá el siguiente resultado:

Title - JavaFX
   Authors:
   - Krishna
   - Rajeev