- Registriert
- 19.12.07
- Beiträge
- 142
Ich schaffe es nicht per XSLTProcessor::setParameter(); eine (vollständige) XPath-Anweisung an den XSLT-Code übergeben. Liegt das an mir, am XSLT-P., oder ist das normal?
Beispiel 1: Das hier geht. Da der XSLT-P. keine <xsl:variable> setzen kann bzw. keinen <xsl
aram> in der XPath-Anweisung akzeptiert (ist das so?), hab ich mir mit einem Workaround geholfen:
Beispiel 2: Da die Methode oben ziemlich unflexibel ist, will ich die Komplette XPath-Anweisung übergeben, aber das geht nicht (Ergebnis: NULL).
Wär' nett wenn mir da jemand helfen könnte.
Beispiel 1: Das hier geht. Da der XSLT-P. keine <xsl:variable> setzen kann bzw. keinen <xsl

Code:
<?php XSLTProcessor::setParameter($ns, array('mykey' => $key, 'myval' => $val)); ?>
<xsl:param name="mykey"/>
<xsl:param name="myval"/>
<xsl:variable name="key" select="$mykey"/>
<xsl:variable name="val" select="$myval"/>
<xsl:template match="table">
<xsl:for-each select="row[$mykey = $myval]">
(...)
Beispiel 2: Da die Methode oben ziemlich unflexibel ist, will ich die Komplette XPath-Anweisung übergeben, aber das geht nicht (Ergebnis: NULL).
Code:
<?php XSLTProcessor::setParameter($ns, 'path', $path); ?>
<xsl:param name="path"/>
<xsl:variable name="xpath" select="$path"/>
<xsl:template match="table">
<xsl:for-each select="$xpath">
(...)
Wär' nett wenn mir da jemand helfen könnte.