3v4l.org

run code in 300+ PHP versions simultaneously
<?php declare(strict_types=1); class Foo { public function __construct(int $integer) { $this->integer = $integer; } } try { $foo = new Foo('1'); } catch (TypeError $e) { } finally { assert(isset($e), 'TypeError was thrown'); assert(!isset($foo), '$foo is unset'); } $foo = (new ReflectionClass(Foo::class))->newInstance('1'); var_dump($foo);

preferences:
35.5 ms | 405 KiB | 5 Q