0

使用更新的 PHP5 和 libXML。请参阅 registerphpfunctions

我尝试了很多事情......包括saveXML(null,LIBXML_NSCLEAN)

可能与从输出中省略不需要的名称空间有关


XML 示例:

<root><p>Hello</p><p>world</p></root>

XSL 示例:

<xsl:transform version="1.0" 
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
   xmlns:php="http://php.net/xsl">
<xsl:output encoding="UTF-8" method="xml" version="1.0" indent="no"/>

<xsl:template match="root"><foo>
   <xsl:for-each select="p">
    <p><xsl:value-of select="php:function('regFunction', . )" /></p>
   </xsl:for-each></foo>
</xsl:template>

XML 输出示例:

<foo>
   <p xmlns:php="http://php.net/xsl">Hello</p>
   <p xmlns:php="http://php.net/xsl">world</p>
</foo>

xmlns:php是一个开销,它不用于输出!

4

0 回答 0