3v4l.org

run code in 300+ PHP versions simultaneously
<?php $html = <<<'HTML' <div class="wrapper"> <h2>This is a header</h2> <h2>This is one too</h2> <h4>Here's one</h4> <div class="ignore"> <h5>I'm one in here too</h5> </div> </div> HTML; $dom = new DOMDocument; $dom->loadHTML($html); $xp = new DOMXPath($dom); $nodeList = $xp->query(' //* [contains(";h1;h2;h3;h4;h5;h6;", concat(";", local-name(), ";"))] [not(ancestor::div[ contains(concat(" ", normalize-space(@class), " "), " ignore ") ]) ]'); foreach ($nodeList as $node) { echo 'tag name: ', $node->nodeName, PHP_EOL, 'html content: ', $dom->saveHTML($node), PHP_EOL, 'text content: ', $node->textContent, PHP_EOL, PHP_EOL; }
Output for git.master, git.master_jit, rfc.property-hooks
tag name: h2 html content: <h2>This is a header</h2> text content: This is a header tag name: h2 html content: <h2>This is one too</h2> text content: This is one too tag name: h4 html content: <h4>Here's one</h4> text content: Here's one

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
189.49 ms | 406 KiB | 5 Q