【问题标题】:PHP DOM loadHtmlFile I/O exceptionPHP DOM loadHtmlFile I/O 异常
【发布时间】:2011-12-29 05:37:01
【问题描述】:

我有以下代码 sn-p - echo'ing $msn 为我提供了预期的完整 html 输出。但是,$dom->loadHTMLFile 给了我一个例外:

警告:DOMDocument::loadHTMLFile() [domdocument.loadhtmlfile]: I/O 警告:无法加载外部实体

不确定我做错了什么?它是一段简单的代码..

$dom = new DOMDocument();

$msn = file_get_contents("http://moneycentral.msn.com/");

echo $msn;
echo "<br><br>";

$html = $dom->loadHTMLFile($msn);

【问题讨论】:

    标签: php dom html-parsing


    【解决方案1】:

    你想要的是loadHTML 而不是loadHTMLFile。后者是打开一个文件,而不是文件的内容。 $msn 的值包含内容,而不是文件本身的 URL。

    【讨论】:

      【解决方案2】:

      loadHTMLFile 获取您尝试加载的文件的路径。您实际上正在做的是将 HTML 标记作为参数传递给它。自然,它失败了。

      你需要这样做

      $html = $dom->loadHTMLFile("http://moneycentral.msn.com/");
      

      $html = $dom->loadHTML($msn);
      

      【讨论】:

        【解决方案3】:

        试试这个结构:

        libxml_use_internal_errors(true);
        $html = $dom->loadHTMLFile($msn);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-01-07
          • 1970-01-01
          • 2014-08-28
          • 2017-08-22
          • 2013-10-03
          • 1970-01-01
          • 2012-09-14
          • 1970-01-01
          相关资源
          最近更新 更多