在PHP中,使用DomDocument getElementByID不起作用?我究竟做错了
发布时间:2020-12-13 16:48:10 所属栏目:PHP教程 来源:网络整理
导读:这是我的一些代码…… $dom = new DomDocument;$html = $newIDs[0];$dom-validateOnParse = true;$dom-loadHTML($html);$dom-preserveWhiteSpace = true;$tryID = $dom-getElementById('ID');echo $tryID; 我试图从一个网站获得多个特定的ID,这只是显示一个,
这是我的一些代码……
$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); 然后你可以再次回声它或什么的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |