downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  

<XSLTProcessor::importStylesheetXSLTProcessor::removeParameter>
Last updated: Thu, 26 Jun 2008

XSLTProcessor::registerPHPFunctions

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

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

Description

XSLTProcessor
void registerPHPFunctions ([ mixed $restrict ] )

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

Parameters

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.

Return Values

No value is returned.

Examples

Example #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="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);
?>

ChangeLog

Version Description
5.1.0 The restrict parameter was added.



add a noteadd a note User Contributed Notes
Enables the ability to use PHP functions as XSLT functions
There are no user contributed notes for this page.




<XSLTProcessor::importStylesheetXSLTProcessor::removeParameter>
Last updated: Thu, 26 Jun 2008
show source | credits | sitemap | contact | advertising | mirror sites
Copyright © 2001-2005 The PHP Group
All rights reserved.
This unofficial mirror is operated at: http://phpbuilder.com/
Last updated: Tue Nov 1 20:20:59 2005 EST
Columns / Articles | Tips / Quickies | News | News Linking and RSS Feeds | Shared Code Library
Mail Archives | Support / Discussion Forums | Get Started! Links | Contribute! | Docs