3v4l.org

run code in 500+ PHP versions simultaneously
<?php $html = <<<'HTML' <div class="blockImg imgRight"> <img src="customs/2/pictures/home.png"> <figcaption>Une légende</figcaption> </div> HTML; $dom = \Dom\HTMLDocument::createFromString($html, LIBXML_NOERROR); $divNode = $dom->querySelector('div.blockImg'); $classList = $divNode?->classList; if ($divNode and $classList->contains('imgRight') || $classList->contains('imgLeft')) { $class = $classList->contains('imgRight') ? 'imgRight' : 'imgLeft'; $src = $divNode->querySelector('img')->getAttribute('src'); $caption = $divNode->querySelector('figcaption')->textContent; echo $class, PHP_EOL, $src, PHP_EOL, $caption, PHP_EOL; }
Output for 8.1.32 - 8.1.34, 8.2.0 - 8.2.34, 8.3.0 - 8.3.35
Fatal error: Uncaught Error: Class "Dom\HTMLDocument" not found in /in/NHjFs:10 Stack trace: #0 {main} thrown in /in/NHjFs on line 10
Process exited with code 255.
Output for 8.4.1 - 8.4.26, 8.5.0 - 8.5.11
imgRight customs/2/pictures/home.png Une légende

preferences:
32.7 ms | 1155 KiB | 9 Q