这是我的代码...
$dom = new DomDocument;
$html = $newIDs[0];
$dom->validateOnParse = true;
$dom->loadHTML($html);
$dom->preserveWhiteSpace = true;
$tryID = $dom->getElementById('ID');
echo $tryID;
我试图从网站上获取多个特定的ID,这只是显示一个,我到处都看到了此方法,包括此处,但是当我尝试打印出来时,什么也不会出现。我尝试测试以查看是否正在阅读
的内容if(!$tryID)
{
("Element not found");
}
,但它也从未打印出来。最后,我使用了
echo $tryID->nodeValue;
仍然什么都没有...有人知道我在做什么错?
另外,如果我确实得到此工作,我可以在同一$ dom上的不同变量中阅读多个不同的内容吗?如果那是有意义的。
好,所以您的解决方案。
div:
<div id="divID" name="notWorking">This is not working!</div>
这将是:
<?php
$dom = new DOMDocument("1.0", "utf-8");
$dom->loadHTMLFile('YourFile.html');
$div = $dom->getElementById('divID');
echo $div->textContent;
$div->setAttribute("name", "yesItWorks");
?>
只要您通过制作精良的XML或XHTML内容,就应该无需文件工作,更改
$dom->loadHTMLFile('YourFile.html');
到你的
$dom->loadHTML($html);
哦,是的,当然要更改内容(完整性):
$div->removeChild($div->firstChild);
$newText = new DOMText('Yes this works!');
$div->appendChild($newText);
然后您可以再次回声或其他东西。