Привет, я хотел знать, как продавать структуру xml при использовании XSLT,
У меня есть этот код ниже,
/* XSLT File */
$xsl = new \DOMDocument;
$xsl->loadXML($xsltData[0]->xslt_template);
$xsl->preserveWhiteSpace = false;
$xsl->formatOutput = true;
/* Combine and Transform XML and XSLT */
$proc = new \XSLTProcessor;
$proc->importStyleSheet($xsl);
$proc->preserveWhiteSpace = false;
$proc->formatOutput = true;
$transformedOutPut = $proc->transformToXML($xml);
Вот мой ввод xml
<?xml version="1.0" encoding="UTF-8"?>
<catalog>
<cd>
<titleA style="test" size="123">Kevin del </titleA>
<address>1119 Johnson Street, San Diego, California</address>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
</catalog>
и вот мой XSLT из базы данных с сохранением интервала,
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<catalognew>
<container-title>My Data</container-title>
<xsl:for-each select="catalog/cd">
<cdnew>
<titlenew><xsl:value-of select="titleA"/></titlenew>
<addressnew>
<street><xsl:value-of select="address/street"/></street>
<city><xsl:value-of select="address/city"/></city>
<state><xsl:value-of select="address/state"/></state>
</addressnew>
</cdnew>
</xsl:for-each>
</catalognew>
</xsl:template>
</xsl:stylesheet>
Почему он дает мне однострочный результат и не сохраняет свою исходную структуру,
<?xml version="1.0"?>
<catalognew><container-title>My Data</container-title><cdnew><titlenew>Kevin del </titlenew><addressnew><street>1119 JOHNSON STREET</street><city>SAN DIEGO</city><state>CALIFORNIA</state></addressnew></cdnew></catalognew>
Надеюсь, кто-то может мне помочь,
Спасибо,