3v4l.org

run code in 300+ PHP versions simultaneously
<?php $html = <<<HTML <!DOCTYPE HTML> <html> <span class="unwrap_me"><i><span class="foo">Lorem</span></i><span class="foo">ipsum</span></span> </html> HTML; $dom = new DOMDocument(); $dom->loadHTML($html); $spans = iterator_to_array($dom->getElementsByTagName('span')->getIterator()); foreach ($spans as $span) { if ('unwrap_me' === $span->getAttribute('class')) { $fragment = $dom->createDocumentFragment(); $fragment->append(...$span->childNodes); $span->parentNode?->replaceChild($fragment, $span); } }

preferences:
33.35 ms | 404 KiB | 5 Q