我想从一个xml文档的xsl转换中创建一个带有php块的html文档(仅用于学习目的)。我正在使用<xsl:processing-instruction>
标记。为什么我的xsl处理指令缺少问号?
<xsl:stylesheet version="1.0" xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:processing-instruction name="php">
<xsl:text>
setcookie("cookiename", "cookievalue");
echo "";
</xsl:text>
</xsl:processing-instruction>
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<xsl:apply-templates />
</body>
</html>
</xsl:template>
<xsl:template match="pagina">
<xsl:for-each select="paragraf">
<p>
<xsl:value-of select="."/>
</p>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
结果为:
<?php
setcookie("ceva", "textceva");
echo "";>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
</head>
<body>
<p>
text 1
</p>
<p>
text 2
</p>
</body>
</html>
为什么第二个问号失踪?我期待着像<?php setcookie(...).. ?>
。
似乎工作正常,当我尝试它。你在使用什么XSLT处理器? – JLRishe