3v4l.org

run code in 300+ PHP versions simultaneously
<?php $res = ' <html> <div class="product bla bla"> <div class="size">xxl</div> <div class="color yy">red</div> </div> <div class="product bla"> <div class="size xxs">xxs</div> <div class="line line2">new</div> </div> <div class="product asd"> <div class="color xx">blue</div> </div> </html> '; $dom = new DomDocument(); @ $dom->loadHTML($res); // utf8_decode $dom->preserveWhiteSpace = false; // ? $xpath = new DomXPath($dom); $nodes = $xpath ->query("//*[contains(@class, 'product')]"); echo "Found {$nodes->length} matching places" . PHP_EOL; foreach($nodes as $node){ $name = $xpath->query("*[contains(@class, 'color')]", $node); echo null === $name[0] ? 'NULL' : $name[0]->nodeValue; echo PHP_EOL; }
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14, 8.5.0 - 8.5.1
Found 3 matching places red NULL blue
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.

preferences:
213.55 ms | 407 KiB | 5 Q