无法通过XML文件解析器读取任意文件

时间:2014-06-15 14:36:11

标签: php xml xslt

所以我想创建一个非常基本的 XML 文件解析器来导入 XML 样式。

<?php
//error_reporting(0);

$XSLT = new XSLTProcessor();
$XML = new DOMDocument();
$XSL = new DOMDocument();

$XSL->load($_GET['file']);
$XSLT->importStyleSheet($XSL);

print $XSLT->transformToXML($XML);

现在我需要读取这样的任意文件:

http://localhost/parser.php?file=style.xml

鉴于我发现很难解决为什么我似乎无法读取同一目录中本地文件系统上的 .txt 文件。

<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
    <xsl:template match='/'>
        <xsl:copy-of select="document('message.txt')"/>
    </xsl:template>
</xsl:stylesheet>

1 个答案:

答案 0 :(得分:0)

document()函数需要格式良好的XML。您无法使用它来阅读纯文本文档。尝试使用它来读取同一目录中的XML文档。它应该工作:

<xsl:copy-of select="document('message.xml')"/> <!-- message.xml is well formed XML -->