3v4l.org

run code in 300+ PHP versions simultaneously
<?php set_error_handler(function (int $no, string $msg) { if (str_starts_with($msg, 'Creation of dynamic property ')) { return true; } elseif (preg_match('~^file_get_contents\(cust\d+://x\): Failed to open stream: ~', $msg)) { return true; } return false; }); $classes = get_declared_classes(); $testedClasses = 0; $i = 0; foreach ($classes as $class) { $scheme = 'cust' . ++$i; // var_dump($class); try { stream_wrapper_register($scheme, $class); file_get_contents($scheme . '://x'); } catch (\Throwable $e) { continue; } $testedClasses++; } if ($testedClasses === 0) { print "Did not test any class\n"; }

preferences:
32.08 ms | 409 KiB | 5 Q