PHP - XSLTProcessor::setParameter() 函数



定义和用法

XML 是一种用于在网络上共享数据的标记语言,XML 既可供人类阅读,也可供机器阅读。XSL 扩展是 XSL 标准的实现,用于使用 libxslt 库执行 XSTL 转换。

XSLTProcessor::setParameter() 函数用于设置当前转换的参数值。

语法

XSLTProcessor::setParameter($namespace, $name, $value);

参数

序号 参数及描述
1

命名空间(必填)

这是一个字符串值,表示 XSLT 参数的 URI。

2

名称(必填)

这是一个字符串值,表示 XSLT 参数的名称。

3

值(必填)

这是一个字符串,表示 XSLT 参数的值。

返回值

此函数返回一个布尔值,成功时为 TRUE,失败时为 FALSE。

PHP 版本

此函数首次引入于 PHP 5 版本,并在所有后续版本中均有效。

示例

以下是此函数的示例:

sample.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="example.xsl"?>
<Tutorial>
   <Title>JavaFX</Title>
   <Authors>
      <Author>Krishna</Author>
      <Author>Rajeev</Author>
   </Authors>
   <Body>Sample text</Body>
</Tutorial>

sample.xsl

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:output method="text"/>

   <xsl:template match="/">
      Title - <xsl:value-of select="/Tutorial/Title"/>
      Authors: <xsl:apply-templates select="/Tutorial/Authors/Author"/>
   </xsl:template>

   <xsl:template match="Author">
      - <xsl:value-of select="." />
   </xsl:template>
</xsl:stylesheet>

sample.php

<?php
   //Loading an XSL document
   $xsl = new DOMDocument();
   $xsl->load("sample.xsl");

   //Loading an XML document
   $xml = new DOMDocument();
   $xml->load("sample.xml");

   //Creating an XSLTProcessor
   $proc = new XSLTProcessor();

   //Importing the XSL document
   $proc->importStyleSheet($xsl);

   //Setting parameter
   $proc->setParameter('', 'param', 'test_value');
   $val = $proc->getParameter('', 'param');

   print("Parameter Value :".$val);

   //Transforming the style to XML
   print($proc->transformToXML($xml));
   //print(res);
?>

这将产生以下结果:

Parameter Value :test_value
   Title - JavaFX
   Authors:
   - Krishna
   - Rajeev
php_function_reference.htm
广告