Frågan#1
Hej.
Har följande xsl-fil:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="titles" />
<xsl:template match="/articles">
<h2><xsl:value-of select="$titles" /></h2>
<xsl:for-each select="item/title[@id='8']">
<h3><xsl:value-of select="." /></h3>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
I stället för att det står @id='8' så vill jag kunna placera värdet med:
$xsl = new DomDocument();
$xsl->load("articles.xsl");
$inputdom = new DomDocument();
$inputdom->load("articles.xml");
/* create the processor and import the stylesheet */
$proc = new XsltProcessor();
$xsl = $proc->importStylesheet($xsl);
$proc->setParameter(null, "id", '8'); // <-- här placeras värdet
echo $proc->transformToDoc($inputdom);
Är detta möjligt?
Just nu gör har jag ett fulhack där jag först läser in filen med php (fopen() och fgets() ) sen kör jag str_replace() där jag byter ett visst tecken mot valt värde.
Sedan kör jag som vanligt och bakar ihop xml-filen samt xsl-filen och skriver ut resultatet.