(PHP 5 >= 5.0.4, PHP 7)
XSLTProcessor::registerPHPFunctions — Activa la capacidad de usar funciones PHP como funciones XSLT
Este método activa la capacidad de usar funciones PHP como funciones XSLT dentro de las hojas de estilo XSL.
restrict
Usar este parámetro para acceder únicamente a ciertas funciones a ser llamadas desde XSLT.
Este parámetro puede ser tanto un string (nombre de la función) como un array de funciones.
No devuelve ningún valor.
Ejemplo #1 Sencilla llamada a una función de PHP desde una hoja de estilos
<?php
$xml = <<<EOB
<allusers>
<user>
<uid>bob</uid>
</user>
<user>
<uid>joe</uid>
</user>
</allusers>
EOB;
$xsl = <<<EOB
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:php="http://php.net/xsl">
<xsl:output method="html" encoding="utf-8" indent="yes"/>
<xsl:template match="allusers">
<html><body>
<h2>Users</h2>
<table>
<xsl:for-each select="user">
<tr><td>
<xsl:value-of
select="php:function('ucfirst',string(uid))"/>
</td></tr>
</xsl:for-each>
</table>
</body></html>
</xsl:template>
</xsl:stylesheet>
EOB;
$xmldoc = DOMDocument::loadXML($xml);
$xsldoc = DOMDocument::loadXML($xsl);
$proc = new XSLTProcessor();
$proc->registerPHPFunctions();
$proc->importStyleSheet($xsldoc);
echo $proc->transformToXML($xmldoc);
?>
Versión | Descripción |
---|---|
5.1.0 |
Se añadió el parámetro restrict .
|