Как удалить элемент HTML с помощью класса DOMDocument

Есть ли способ удалить элемент HTML с помощью класса DOMDocument ?

Related of "Как удалить элемент HTML с помощью класса DOMDocument"

http://us2.php.net/manual/en/domnode.removechild.php

DomDocument – это DomNode .. Вы можете просто вызвать remove child, и все должно быть в порядке.

EDIT: Просто заметили, что вы, вероятно, говорили о странице, с которой работаете сейчас. Не знаю, будет ли работать DomDocument. Вы можете захотеть использовать javascript в этот момент (если он уже был доведен до клиента)

В дополнение к ответу Дэйва Моргана вы можете использовать DOMNode::removeChild чтобы удалить дочерний DOMNode::removeChild из списка детей:

Удаление дочернего элемента по имени тега

 //The following example will delete the table element of an HTML content. $dom = new DOMDocument(); //avoid the whitespace after removing the node $dom->preserveWhiteSpace = false; //parse html dom elements $dom->loadHTML($html_contents); //get the table from dom if($table = $dom->getElementsByTagName('table')->item(0)) { //remove the node by telling the parent node to remove the child $table->parentNode->removeChild($table); //save the new document echo $dom->saveHTML(); } 

Удаление дочернего элемента по имени класса

 //same beginning $dom = new DOMDocument(); $dom->preserveWhiteSpace = false; $dom->loadHTML($html_contents); //use DomXPath to find the table element with your class name $xpath = new DomXPath($dom); $classname='MyTableName'; $xpath_results = $xpath->query("//table[contains(@class, '$classname')]"); //get the first table from XPath results if($table = $xpath_results->item(0)){ //remove the node the same way $table ->parentNode->removeChild($table); echo $dom->saveHTML(); } 

Ресурсы

http://us2.php.net/manual/en/domnode.removechild.php

Как удалить элемент с помощью DOMDocument?

Как получить полный HTML-код из метода DOMXPath :: query ()?