XSLTProcessor::setParameter

(PHP 5, PHP 7)

XSLTProcessor::setParameterSet value for a parameter

说锟斤拷

XSLTProcessor::setParameter ( string $namespace , string $name , string $value ) : bool
XSLTProcessor::setParameter ( string $namespace , array $options ) : bool

Sets the value of one or more parameters to be used in subsequent transformations with XSLTProcessor. If the parameter doesn't exist in the stylesheet it will be ignored.

锟斤拷锟斤拷

namespace

The namespace URI of the XSLT parameter.

name

The local name of the XSLT parameter.

value

The new value of the XSLT parameter.

options

An array of name => value pairs. This syntax is available since PHP 5.1.0.

锟斤拷锟斤拷值

锟缴癸拷时锟斤拷锟斤拷 TRUE锟斤拷 锟斤拷锟斤拷锟斤拷失锟斤拷时锟斤拷锟斤拷 FALSE锟斤拷

锟斤拷锟斤拷

Example #1 Changing the owner before the transformation

<?php

$collections 
= array(
    
'Marc Rutkowski' => 'marc',
    
'Olivier Parmentier' => 'olivier'
);

$xsl = new DOMDocument;
$xsl->load('collection.xsl');

// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules

foreach ($collections as $name => $file) {
    
// Load the XML source
    
$xml = new DOMDocument;
    
$xml->load('collection_' $file '.xml');

    
$proc->setParameter('''owner'$name);
    
$proc->transformToURI($xml'file:///tmp/' $file '.html');
}

?>

锟轿硷拷