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

Popis

class XSLTProcessor {

void registerPHPFunctions ( [mixed restrict] )

}

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

Seznam parametrů

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.

Návratové hodnoty

Nevrací se žádná hodnota.

Příklady

Příklad 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);
?>

ChangeLog (záznam změn)

VerzePopis
5.1.0 The restrict parameter was added.