3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { private $a; protected $b; public $c; private $d; protected $e; public $f; } class B extends A { private $a; protected $b; public $c; } $a = new \ReflectionProperty('\B', 'a'); $b = new \ReflectionProperty('\B', 'b'); $c = new \ReflectionProperty('\B', 'c'); $d = new \ReflectionProperty('\B', 'd'); $e = new \ReflectionProperty('\B', 'e'); $f = new \ReflectionProperty('\B', 'f'); var_dump($a->class); var_dump($a->getDeclaringClass()->getName()); var_dump($b->class); var_dump($b->getDeclaringClass()->getName()); var_dump($c->class); var_dump($c->getDeclaringClass()->getName()); var_dump($d->class); var_dump($d->getDeclaringClass()->getName()); var_dump($e->class); var_dump($e->getDeclaringClass()->getName()); var_dump($f->class); var_dump($f->getDeclaringClass()->getName());
Output for git.master, git.master_jit, rfc.property-hooks
Fatal error: Uncaught ReflectionException: Property B::$d does not exist in /in/8PnT6:30 Stack trace: #0 /in/8PnT6(30): ReflectionProperty->__construct('\\B', 'd') #1 {main} thrown in /in/8PnT6 on line 30
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
40.42 ms | 401 KiB | 8 Q