3v4l.org

run code in 300+ PHP versions simultaneously
<?php final class AnonymousExtendsExistingClassInUnion { private ?DateTime $x = null; public function __construct() { if (rand(0,1)) { $this->x = new \DateTime('now'); var_dump('not extends'); var_dump($this->x); } else { $this->x = new class extends \DateTime {}; var_dump('extends'); var_dump($this->x); } } } (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion()); (new AnonymousExtendsExistingClassInUnion());

preferences:
28.13 ms | 478 KiB | 5 Q