XSLTProcessor::transformToUri
(PHP 5, PHP 7, PHP 8)
XSLTProcessor::transformToUri — Transform to URI
说明
Transforms the source node to an URI applying the stylesheet given by the XSLTProcessor::importStylesheet() method.
参数
document
-
The Dom\Document, DOMDocument, SimpleXMLElement or libxml-compatible object to be transformed.
uri
-
The target URI for the transformation.
错误/异常
The following errors are possible when using an expression that invokes PHP callbacks.
返回值
Returns the number of bytes written or false
if an error occurred.
更新日志
版本 | 说明 |
---|---|
8.4.0 | Now throws an Error if the callback cannot be invoked, instead of emitting a warning. |
8.4.0 | Added support for Dom\Document. |
示例
示例 #1 Transforming to a HTML file
<?php
// Load the XML source
$xml = new DOMDocument;
$xml->load('collection.xml');
$xsl = new DOMDocument;
$xsl->load('collection.xsl');
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
$proc->transformToURI($xml, 'file:///tmp/out.html');
?>
示例 #2 Transforming to a HTML file using Dom\Document
<?php
$xml = Dom\XMLDocument::createFromFile('collection.xml');
$xsl = Dom\XMLDocument::createFromFile('collection.xsl');
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
$proc->transformToURI($xml, 'file:///tmp/out.html');
?>
参见
- XSLTProcessor::transformToDoc() - Transform to a document
- XSLTProcessor::transformToXml() - Transform to XML
+添加备注
用户贡献的备注 1 note
jonbarnett at gmail dot com ¶
17 years ago
Sometimes you don't want to transform to a file, an XML string (because you're using text or html), or a DOMDocument.
To transform to standard output, you can use php://output
<?php
$proc->transformToURI($xml, 'php://output');
?>
To transform to a string (of HTML or text, instead of XML), you can use the above in conjunction with output buffering.
<?php
ob_start();
$proc->transformToURI($xml, 'php://output');
$outputString = ob_get_flush();
?>
备份地址:http://www.lvesu.com/blog/php/xsltprocessor.transformtouri.php