PHP:使用DOMDocument-> loadHTMLFile时返回空'p'标记

时间:2012-02-03 19:48:22

标签: php html file-io

我看到这篇文章:

Text from <p> tag using DOM Php

我遇到了类似的问题,我<p>

只有我的$dom->loadHTMLFile($url);代码为空

如果我查看原始网站,则所有<p>代码中都包含文字,我已通过此方法获取页面验证了这一点:

$data = 'somedata';
$optional_headers = null;
$url = 'http://www.myurl.com';
$params = array('http' => array(
              'method' => 'POST',
              'content' => $data              
  ));
  if ($optional_headers !== null) {
    $params['http']['header'] = $optional_headers;
  }
  $context = stream_context_create($params);
  $fp = @fopen($url, 'r', false, $context);
  if (!$fp) {
    throw new Exception("Problem with $url, $php_errormsg");
  }
  $response = @stream_get_contents($fp);
  fclose($fp);
  if ($response === false) {
    throw new Exception("Problem reading data from $url, $php_errormsg");
  }

如果我回复$ response,我会按预期填充<p>个标签。

当我将$ url更新为正确的“http://www.myurl.com?q=value”时,请使用

$dom = new DOMDocument();
$dom->loadHTMLFile($url);
libxml_use_internal_errors(true);
$dom->loadHTMLFile($url);
echo $dom->saveHTML();

我将<p>标记全部清空,并且引用的数据应该引用(尽管引号在呈现给浏览器时不可见。)

任何人都可以解释为什么会发生这种情况以及如何解决这个问题?

0 个答案:

没有答案