我输入XML文件:XML转换与PHP变量传递
<root>
<child/>
</root>
我的预期输出会在查看页面源:
<root>
<child>
<new_element>new1</new_element>
<new_element>new2</new_element>
<new_element>new3</new_element>
</child>
</root>
实际输出我得到的查看页面源:
<root>
<child><new_element>new1</new_element> <new_element>new2</new_element> <new_element>new3</new_element></child>
</root>
我XLST代码:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:param name="test"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="/root/child">
<xsl:copy>
<xsl:value-of select="$test"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
我的PHP代码:
<?php
$xslt = new xsltProcessor;
$xslt->importStyleSheet(DomDocument::load('test.xsl'));
$val = '<new_element>new1</new_element> <new_element>new2</new_element> <new_element>new3</new_element>';
$xslt->setParameter('','test',$val);
echo $view = $xslt->transformToXML(DomDocument::load('test.xml'));
?>
通过在浏览器中运行这个我得到了与解析XML标签输出。请找出我出错的地方。
删除标签之间的空格。然后重试。 –
Dhruvisha
2012-07-18 12:56:56
不,它不起作用。 – user806444 2012-07-19 07:06:30