0

简单的问题:为什么从 XSL 样式表调用的 PHP 函数只返回传递的最后一个参数:

foo.xsl:

<xsl:template match="/">
    <xsl:value-of select="php:function('date','c')" />
</xsl:template>

PHP:

...  
$xsl = new XSLTProcessor();
$xsl->registerPHPFunctions();
$xsl->importStylesheet($fooStylesheet);
echo $xsl->transformToXML($myXML);

我得到输出

c

如果我打电话,<xsl:value-of select="php:function('date')" />我就会得到date我的输出。对我来说似乎很奇怪。

版本信息:
PHP 5.3.2
libxslt 版本 1.1.26
libxslt 针对 libxml 版本 2.7.6 编译的
EXSLT 启用
libexslt 版本 1.1.26

4

1 回答 1

1

您需要<stylesheet>根标签中的 PHP xmlns:

<stylesheet xmlns:php="http://php.net/xsl">
于 2010-05-29T18:41:40.337 回答