我正在使用 PHP/Zend 将 html 加载到 DOM 中,然后我得到一个我想要修改的特定 div id。
$dom = new Zend_Dom_Query($html);
$element = $dom->query('div[id="someid"]');
如何修改显示在该$element
div 内的文本/内容/html,然后将更改保存到$dom
or$html
以便我可以打印修改后的 html。知道怎么做吗?
我正在使用 PHP/Zend 将 html 加载到 DOM 中,然后我得到一个我想要修改的特定 div id。
$dom = new Zend_Dom_Query($html);
$element = $dom->query('div[id="someid"]');
如何修改显示在该$element
div 内的文本/内容/html,然后将更改保存到$dom
or$html
以便我可以打印修改后的 html。知道怎么做吗?
Zend_Dom_Query 仅用于查询 dom,因此它本身并没有提供一个接口来更改 dom 并保存它,但它确实公开了 PHP Native DOM 对象,让您可以这样做。像这样的东西应该工作:
$dom = new Zend_Dom_Query($html);
$document = $dom->getDocument();
$elements = $dom->query('div[id="someid"]');
foreach($elements AS $element) {
//$element is an instance of DOMElement (http://www.php.net/DOMElement)
//You have to create new nodes off the document
$node = $document->createElement("div", "contents of div");
$element->appendChild($node)
}
$newHtml = $document->saveXml();
查看 DOMElement 的 PHP 文档,了解如何更改 dom: