Forum und email
XSLTProcessor::registerPHPFunctions

XSLTProcessor::registerPHPFunctions

(no version information, might be only in CVS)

XSLTProcessor::registerPHPFunctions -- Enables the ability to use PHP functions as XSLT functions

Opis

class XSLTProcessor {

void registerPHPFunctions ( [mixed restrict] )

}

This method enables the ability to use PHP functions as XSLT functions within XSL stylesheets.

Parametry

restrict

Use this parameter to only allow certain functions to be called from XSLT.

This parameter can be either a string (a function name) or an array of functions.

Zwracane wartości

Żadna wartość nie jest zwracana.

Przykłady

Przykład 1. Simple PHP Function call from a stylesheet

<?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="https://www.w3.org/1999/XSL/Transform"
     xmlns:php="https://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);
?>

Rejestr zmian

WersjaOpis
5.1.0 The restrict parameter was added.