Removing Inner HTML Content Based on ID
This guide demonstrates how to remove specific HTML content enclosed within a tag identified by its ID, effectively stripping away undesired sections of a web page.
Problem Statement
Consider the following HTML:
<code class="html"><html> <body> bla bla bla bla <div id="myDiv"> more text <div id="anotherDiv"> And even more text </div> </div> bla bla bla </body> </html></code>
The aim is to remove everything starting from the
Native DOM Solution
Using the native DOM (Document Object Model), you can achieve this as follows:
<code class="php">$dom = new DOMDocument; $dom->loadHTML($htmlString); $xPath = new DOMXPath($dom); $nodes = $xPath->query('//*[@id="anotherDiv"]'); if($nodes->item(0)) { $nodes->item(0)->parentNode->removeChild($nodes->item(0)); } echo $dom->saveHTML();</code>
This code initializes a DOMDocument object, loads the HTML into it, and creates an XPath object to query based on the specified ID. It then finds the corresponding node and removes it from its parent, effectively stripping away the unwanted HTML content.
The above is the detailed content of How to Remove Specific HTML Content Based on ID Using Native DOM?. For more information, please follow other related articles on the PHP Chinese website!