XSLT中用生成处理指令,而非创建该标签本身;支持静态name属性、动态表达式及隐式target,输出位置受限且target不可为xml。
在XSLT中生成处理指令(Processing Instruction,简称PI),不能直接用 标签来“创建”一个名为 xsl:processing-instruction 的元素——因为 xsl:processing-instruction 本身是XSLT的一个**指令元素**,用于在输出中插入任意处理指令(比如 ),而不是生成它自己。
输出处理指令 是XSLT内置的指令,作用是在结果文档中生成一条处理指令(PI),例如 XML 声明之后的样式表关联、自定义 PI 等。它的名字(即 PI 的 target)通过属性或内容指定,内容作为 PI 的 data 部分。
常见写法:
name 属性 + 表达式):pi-target 和 pi-data 属性,例如
(注意:target 是 php,data 是后面部分) 这个标签本身 是 XSLT 指令,只在
样式表中使用,不会出现在输出结果里。如果你想在输出中“显示”或“输出”这段文字(比如用于文档示例),必须把它当作普通文本转义输出:
+ 手动转义: 复制预定义的文本节点(更安全)xml(大小写敏感),这是 XML 规范保留的(如 是声明,不是 PI)?> ,需确保不提前结束 PI;XSLT 处理器一般会自动转义,但手写字符串时要留意基本上就这些。核心记清楚: 是“生成 PI 的工具”,不是“被生成的对象”。