的getElementsByTagName不工作在PHP

问题描述:

我有这样的HTML代码:的getElementsByTagName不工作在PHP

<div id="sd_rce"> 
    <br> 
    <h2>The Content I want</h2> 
</div> 

而且我想“的内容我想”用PHP。我试过这个

$html = //LookAbove; 
    $DOM = new DOMDocument; 
    $DOM->loadHTML($html); 

    $items = $DOM->getElementsByTagName('h2'); 

    for ($i = 0; $i < $items->length; $i++) 
     echo $items->item($i)->nodeValue . "<br/>"; 

任何人都可以看到我在做什么错?白色的网站就是我所得到的。

+2

白屏意味着你必须打开错误报告,因为你有一个致命的PHP错误。 'ini_set('display_errors',1); error_reporting(E_ALL);'_Always_开发并打开错误报告。 –

+0

它适合我。 – Tchoupi

+0

我把这个放在我的代码中,然后显示我的变量,但现在错误? – Sebastian

尝试

$DOM = new DOMDocument('1.0', 'iso-8859-1'); 
+0

+1,但请解释为什么观众会知道它是什么。顺便说一句,当你初始化'DOMDoucment'时总是给出编码,这样它就可以在每台服务器上工作,即使默认值与你的编码不​​同。 –

+0

它的默认示例在这里http://php.net/manual/en/domdocument.construct.php,通常这是做到这一点的最佳方式 – Dima

给予编码选项是不错的主意总是,我相信。

但是对于这里发布的情况,我怀疑你是否正在处理来自htmlspecialchars()的文本结果。

在网络浏览器中,您会看到“<”字符,但实际上它可能是“<”,则PHP DOM无法正确解析整个文本。