3v4l.org

run code in 300+ PHP versions simultaneously
<?php $lintCodeFx = function (string $code): ?string { $evalCode = 'if (time() === 1) {' // never true, but not evaluable on compile time . " ?>\n\n" . $code . "\n\n?><?php }"; echo $evalCode . "\n"; try { eval($evalCode); } catch (\Throwable $e) { return $e->getMessage(); } return null; }; var_dump($lintCodeFx('<?php class Foo{public $bar;}')); var_dump($lintCodeFx('<?php class Bar{public $bar; public $bar;}'));
Output for 8.5.0 - 8.5.1
if (time() === 1) { ?> <?php class Foo{public $bar;} ?><?php } NULL if (time() === 1) { ?> <?php class Bar{public $bar; public $bar;} ?><?php } Fatal error: Cannot redeclare Bar::$bar in /in/9NUjY(11) : eval()'d code on line 3 Stack trace: #0 /in/9NUjY(20): {closure:/in/9NUjY:3}('<?php class Bar...') #1 {main}
Process exited with code 255.
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.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14
if (time() === 1) { ?> <?php class Foo{public $bar;} ?><?php } NULL if (time() === 1) { ?> <?php class Bar{public $bar; public $bar;} ?><?php } Fatal error: Cannot redeclare Bar::$bar in /in/9NUjY(11) : eval()'d code on line 3
Process exited with code 255.

preferences:
115.27 ms | 410 KiB | 5 Q