note 105815 added to book.dom
| From: | Drupella at osu1 dot php dot net | Date: | Sat, 17 Sep 2011 04:18:22 +0000 |
| Subject: | note 105815 added to book.dom | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-183231@lists.php.net to get a copy of this message | ||
Here is a fast innerHTML function that returns the result without iterating over child nodes.
<?php
function innerHTML($el) {
$doc = new DOMDocument();
$doc->appendChild($doc->importNode($el, TRUE));
$html = trim($doc->saveHTML());
$tag = $el->nodeName;
return preg_replace('@^<' . $tag . '[^>]*>|</' . $tag .
'>$@', '', $html);
}
?>
Example
<?php
$doc = new DOMDocument();
// A corrupt HTML string
$doc->loadHTML('<HTML><A HREF="ss">asd</A>');
$body = $doc->getElementsByTagName('body')->item(0);
print htmlspecialchars(innerHTML($body));
// Prints <a href="ss">asd</a>
?>
----
Server IP: 69.147.83.197
Probable Submitter: 78.165.127.50
----
Manual Page -- http://www.php.net/manual/en/book.dom.php
Edit -- https://master.php.net/note/edit/105815
Del: integrated -- https://master.php.net/note/delete/105815/integrated
Del: useless -- https://master.php.net/note/delete/105815/useless
Del: bad code -- https://master.php.net/note/delete/105815/bad+code
Del: spam -- https://master.php.net/note/delete/105815/spam
Del: non-english -- https://master.php.net/note/delete/105815/non-english
Del: in docs -- https://master.php.net/note/delete/105815/in+docs
Del: other reasons-- https://master.php.net/note/delete/105815
Reject -- https://master.php.net/note/reject/105815
Search -- https://master.php.net/manage/user-notes.php