Php 使用xslt转换将xml转换为html

Php 使用xslt转换将xml转换为html,php,xml,xslt,xpath,Php,Xml,Xslt,Xpath,文档: <?xml version="1.0" encoding="utf-8"?> <page> <tab dim="30"> <column> </column> <column> </column> </tab> <tab dim="70"> </tab> </pag

文档:

<?xml version="1.0" encoding="utf-8"?>
<page>
    <tab dim="30">
        <column>

        </column>
        <column>

        </column>
    </tab>
    <tab dim="70">
    </tab>
</page>
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
    <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text>
    <html>
    <head>

    </head>
    <body>
        <xsl:for-each select="tab">
        <div class="tab">tab</div>
        </xsl:for-each>
    </body>
    </html>
</xsl:template>

</xsl:stylesheet>

样式表:

<?xml version="1.0" encoding="utf-8"?>
<page>
    <tab dim="30">
        <column>

        </column>
        <column>

        </column>
    </tab>
    <tab dim="70">
    </tab>
</page>
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
    <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text>
    <html>
    <head>

    </head>
    <body>
        <xsl:for-each select="tab">
        <div class="tab">tab</div>
        </xsl:for-each>
    </body>
    </html>
</xsl:template>

</xsl:stylesheet>

!DOCTYPE html>
标签
制作此

<!DOCTYPE html><html><head></head><body></body></html>
<!DOCTYPE html><html><head></head><body><div class="tab">tab</div><div class="tab">tab</div></body></html>

我想要这个

<!DOCTYPE html><html><head></head><body></body></html>
<!DOCTYPE html><html><head></head><body><div class="tab">tab</div><div class="tab">tab</div></body></html>
tab
您需要

<xsl:for-each select="page/tab">

而不是

<xsl:for-each select="tab">
<xsl:template match="/">


要么那样,要么你可以这样做

<xsl:template match="/page">

而不是

<xsl:for-each select="tab">
<xsl:template match="/">

我会将模板匹配用于–和


!DOCTYPE html
标签