加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

如何使用XSLT创建PHP / JSP / ERB标记?

发布时间:2020-12-13 17:04:51 所属栏目:PHP教程 来源:网络整理
导读:我有一堆 XML文件用于生成HTML页面.这些页面最终会被标记(手动),其中一些%=%标签并制作成 Ruby .erb模板. 有没有办法生成特殊标签?php?或%=%直接在XSL转换期间? 我尝试过使用![CDATA [...]]阻止,但随后输出生成 lt;和 gt;而不是和. 解决方法 Is ther
我有一堆 XML文件用于生成HTML页面.这些页面最终会被标记(手动),其中一些<%=%>标签并制作成 Ruby .erb模板.

有没有办法生成特殊标签<?php?>或<%=%>直接在XSL转换期间?

我尝试过使用<![CDATA [...]]>阻止,但随后输出生成& lt;和& gt;而不是<和>.

解决方法

Is there a way to generate the special tags <?php ?> or <%= %> directly during the XSL transform?

<?php?>不是“特殊标记” – 这是XPath数据模型中的标准节点类型 – processing instruction.

还有一条用于创建PI的XSLT指令:

<xsl:processing-instruction>

最后,您可以创建“<%=%>”之类的文字如果您使用文本输出方法:

<xsl:output method="text"/>

但是在文本输出方法中你输了一个节点 – 你应该输入每个输出字符作为文本.

因此,如果XSLT处理器支持,则使用默认的xml输出方法和(非强制!)属性disable-output-escaping =“yes”会更方便一点.

这是一个例子:

<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes"/>

 <xsl:template match="/">
   <xsl:processing-instruction name="php"/>
   <xsl:text disable-output-escaping="yes">
     &lt;% Hello World! %>
   </xsl:text>
 </xsl:template>
</xsl:stylesheet>

将此转换应用于任何XML文档(未使用)会产生:

<?php?>
     <% Hello World! %>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读