我想将一个xml转换为另一个xml。例如,如果xml标记为字符串,
<book>
<title>test</test>
<isbn>1234567890</isbn>
<author>test</author>
<publisher>xyz publishing</publisher>
</book>
我想将上面的xml转换为
<b00>
<t001>test</t001>
<a001>1234567890</a001>
<a002>test</a002>
<p001>xyz publishing </p001>
</b00>
如何使用php转换xml
答案 0 :(得分:3)
您可以使用XSLT进行转换。
$doc = new DOMDocument();
$doc->load('/path/to/your/stylesheet.xsl');
$xsl = new XSLTProcessor();
$xsl->importStyleSheet($doc);
$doc->load('/path/to/your/file.xml');
echo $xsl->transformToXML($doc);
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" />
<xsl:template match="/">
<b00><xsl:apply-templates/></b00>
</xsl:template>
<xsl:template match="title">
<t001><xsl:value-of select="."/></t001>
</xsl:template>
<xsl:template match="isbn">
<a001><xsl:value-of select="."/></a001>
</xsl:template>
<xsl:template match="author">
<a002><xsl:value-of select="."/></a002>
</xsl:template>
<xsl:template match="publisher">
<p001><xsl:value-of select="."/></p001>
</xsl:template>
</xsl:stylesheet>