使用dom时缺少html内容->;用PHP保存HTML

使用dom时缺少html内容->;用PHP保存HTML,php,html,Php,Html,我正在使用DOM从网站获取数据。我已经在本地服务器上测试了我的代码,它工作得很好。但是,当我将代码上传到服务器上并运行代码时,我创建的脚本返回的html标记没有任何内容。我的代码如下所示: $divs = $dom->getElementsByTagName('div'); foreach($divs as $div){ if($div->getAttribute('class') == "content1"){ $dom = new DOMDocument(

我正在使用DOM从网站获取数据。我已经在本地服务器上测试了我的代码,它工作得很好。但是,当我将代码上传到服务器上并运行代码时,我创建的脚本返回的html标记没有任何内容。我的代码如下所示:

$divs = $dom->getElementsByTagName('div');
foreach($divs as $div){
    if($div->getAttribute('class') == "content1"){
        $dom = new DOMDocument();
        $dom->appendChild($dom->importNode($div, true));
        $content1 = $dom->saveHTML();
        echo "content:".$content1;
    }
}
在我的localhost中,它返回如下内容:

<div class="content1">This is my content</div>
这是我的内容
然而,在服务器中,我奇怪地得到了空html标记,如下所示:

<div class="content1"></div>


这个问题的可能原因是什么?我有什么办法可以修吗?请告知。

5.3.6下的PHP版本:

创建一个变量,该变量将包含当前节点和所有子节点的克隆, 将其作为子对象附加 回显返回的值

foreach($divs as $div) {
   if($div->getAttribute('class') == "content1"){
      $dom = new DOMDocument();
      $cloned = $div->cloneNode(TRUE);
      $dom->appendChild($dom->importNode($cloned,TRUE));
      $content1 = $dom->saveHTML();
      echo "content:".$content1;
  }
}
编辑:我犯了一个错误,但事实并非如此

$cloned = $element->cloneNode(TRUE);
但是


抱歉^^(希望它能工作)

可能是HTML格式不正确。。。您能给我们一个它不工作的示例页面吗?如果在本地主机上一切正常,但在服务器上没有,那么可能是php没有正确安装在您的服务器上。@Dk Macadamia,好主意。这可能就是原因。无论如何,我正在尝试使用file\u get\u内容来代替dom。它为我返回了一些内容,所以我将尝试走这条路。谢谢。尝试了这个,我仍然得到了空的html。是的,我想那应该是html元素,但它在服务器中仍然不起作用。
$cloned = $div->cloneNode(TRUE);