【问题标题】:How can i validate an XML feed before parsing it with simplexml_load_file in PHP?在使用 PHP 中的 simplexml_load_file 解析 XML 提要之前,如何验证它?
【发布时间】:2011-09-09 09:49:49
【问题描述】:

我现在正在这样做

<?php   

     $xml = simplexml_load_file('www.tompeters.com/atom.xml');                  
     print_r($xml);

?>

但它返回此错误

警告:simplexml_load_file() [function.simplexml-load-file]:I/O 警告:未能加载外部实体“www.tompeters.com/atom.xml”

我认为这是因为提要不是有效的 XML? 那么如何验证它以便解析提要呢?

谢谢

【问题讨论】:

    标签: php xml feed


    【解决方案1】:

    解析提要正在验证它。

    无论如何,错误消息看起来更像是您无权访问该文件。我不知道 PHP,但我至少会预料到

    simplexml_load_file('http://www.tompeters.com/atom.xml');
    

    【讨论】:

    • 嗨!刚刚测试了这个解决方案,工作。你需要告诉 php 它必须使用哪个协议来加载文件(这里:http://)。如果您仍想从 DTD 验证 XML 文档,您可以使用domdocument::validate()。如果您需要根据 XSD 文件验证您的文件,也可以使用 DomDocument::schemaValidate
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多