的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/>";
任何人都可以看到我在做什么错?白色的网站就是我所得到的。
答
尝试
$DOM = new DOMDocument('1.0', 'iso-8859-1');
+0
+1,但请解释为什么观众会知道它是什么。顺便说一句,当你初始化'DOMDoucment'时总是给出编码,这样它就可以在每台服务器上工作,即使默认值与你的编码不同。 –
+0
它的默认示例在这里http://php.net/manual/en/domdocument.construct.php,通常这是做到这一点的最佳方式 – Dima
答
给予编码选项是不错的主意总是,我相信。
但是对于这里发布的情况,我怀疑你是否正在处理来自htmlspecialchars()的文本结果。
在网络浏览器中,您会看到“<”字符,但实际上它可能是“<”,则PHP DOM无法正确解析整个文本。
白屏意味着你必须打开错误报告,因为你有一个致命的PHP错误。 'ini_set('display_errors',1); error_reporting(E_ALL);'_Always_开发并打开错误报告。 –
它适合我。 – Tchoupi
我把这个放在我的代码中,然后显示我的变量,但现在错误? – Sebastian