3v4l.org

run code in 300+ PHP versions simultaneously
<?php $html = <<<HTML <!DOCTYPE HTML> <html> <body> <p><span class="unwrap_me">ipsum</span><span class="unwrap_me">dolor</span></p> </body> </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')) { $span->replaceWith(...$span->childNodes); } } echo $dom->saveHTML();
Output for 8.1.22 - 8.1.33, 8.2.9 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14, 8.5.0
<!DOCTYPE HTML> <html> <body> <p>ipsumdolor</p> </body> </html>
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.
Output for 8.1.19 - 8.1.21, 8.2.6 - 8.2.8
<!DOCTYPE HTML> <html><body> <p>ipsumdolor</p> </body></html>
Output for 8.0.20, 8.1.7 - 8.1.8, 8.2.0 - 8.2.5
<!DOCTYPE HTML> <html><body> <p>ipsum<span class="unwrap_me"></span></p> </body></html> free(): double free detected in tcache 2
Process exited with code 134.
Output for 8.0.1 - 8.0.19, 8.0.21 - 8.0.29, 8.1.0 - 8.1.6, 8.1.9 - 8.1.18
<!DOCTYPE HTML> <html><body> <p>ipsum<span class="unwrap_me"></span></p> </body></html>
Process exited with code 134.
Output for 8.0.30
<!DOCTYPE HTML> <html> <body> <p>ipsum<span class="unwrap_me"></span></p> </body> </html>
Process exited with code 134.

preferences:
236.84 ms | 412 KiB | 5 Q