Forum und email

XSLTProcessor::registerPHPFunctions

(No version information available, might be only in CVS)

XSLTProcessor::registerPHPFunctions — Active l'utilisation de PHP dans les feuilles de styles XSLT

Description

XSLTProcessor
void registerPHPFunctions ([ mixed $restrict ] )

Cette méthode permet d'utiliser les fonctions PHP en tant que fonctions XSLT dans les feuilles de style XSL.

Liste de paramètres

restrict

Utilisez ce paramètre pour restreindre les fonctions PHP accessibles depuis XSLT.

Ce paramètre peut être une chaîne (le nom d'une fonction) ou un tableau de noms de fonctions.

Valeurs de retour

Aucune valeur n'est retournée.

Exemples

Example#1 Appel d'une fonction PHP depuis une feuille de style

<?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);
?>

Historique

Version Description
5.1.0 Le paramètre restrict a été ajouté.