使用物理路径在PHP中加载XML文件

时间:2015-12-06 22:19:42

标签: php xml

当我使用文件的物理路径时,尝试使用PHP加载XML文件时出错。当XML文件与代码文件位于同一目录时,我不会遇到问题。 代码如下:

<?php
$xml=simplexml_load_file(realpath('D:\XML\req.xml')) or die("Error: Cannot create object");
print_r($xml);
?>

任何帮助将不胜感激。

此致 拉胡

1 个答案:

答案 0 :(得分:0)

我无法提供有关simplxml的建议,但以下内容使用DOMDocument确实有效。

<?php
    $path=realpath('C:\wwwroot\files\xml\bbc_rss.xml');
    if( $path ){

        libxml_use_internal_errors( true );
        $dom=new DOMDocument;
        $dom->standalone=true;
        $dom->validateOnParse=false;
        $dom->strictErrorChecking=false;
        $dom->recover=true;
        $dom->formatOutput=false;
        $dom->load( $path );
        libxml_clear_errors();

        echo '<pre>', print_r( $dom->saveXML() ,true ),'</pre>';
        $dom=null;

    } else {
        echo 'unable to find the xml file.';    
    }
?>

当我尝试使用错误的xml(即:由于某种原因形成不良或被认为无效的文件)文件时,没有显示任何内容但是我知道xml文件没问题就可以了。如果您不想使用DOMDocument方法,那么我是否可以建议尝试使用来自interwebs的已知xml文件作为测试?