3v4l.org

run code in 300+ PHP versions simultaneously
<?php $files=[ 'Non-Images Only'=>'filename 1 (https://example.com/test.exe)', 'Mixed-Type'=>'filename 1 (https://example.com/test.pdf), filename 2 (https://example.com/cool_image.jpg), filename 3 (https://example.com/other-file.docx), filename 4 (https://example.com/nice_image.png)', 'Images-Only'=>'filename 1 (https://example.com/another.png), filename 2 (https://example.com/cool_image.jpg))']; foreach ($files as $type => $batch) { echo "Batch: ".$batch.PHP_EOL; echo "Expecting: ".$type.PHP_EOL; $images = preg_match('/\.(png|gif|jpe?g|bmp)/im', $batch); $nonImages = preg_match('/^(?!.*[.](png|gif|jpe?g|bmp))(?:.*$|,)/im', $batch); $result = ""; if ($images && $nonImages) { $result = "Mixed-Type"; } else { if ($images) { $result = "Images-Only"; } else { $result = "Non-Images Only"; } } echo "Result: ".$result.PHP_EOL; echo PHP_EOL; }
Output for 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 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.4.16, 8.5.0 - 8.5.1
Batch: filename 1 (https://example.com/test.exe) Expecting: Non-Images Only Result: Non-Images Only Batch: filename 1 (https://example.com/test.pdf), filename 2 (https://example.com/cool_image.jpg), filename 3 (https://example.com/other-file.docx), filename 4 (https://example.com/nice_image.png) Expecting: Mixed-Type Result: Mixed-Type Batch: filename 1 (https://example.com/another.png), filename 2 (https://example.com/cool_image.jpg)) Expecting: Images-Only Result: Images-Only
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:
131.5 ms | 407 KiB | 5 Q