3v4l.org

run code in 300+ PHP versions simultaneously
<?php class P { protected static $v = 1; public function output() { echo new ReflectionProperty($this, 'v')->getValue($this); } } class C extends P { public function test(P $i) { return $i->v; } } class C2 extends P { protected static $v = 2; } $c = new C; $c2 = new C2; $reflection = new ReflectionClass(P::class); $property = $reflection->getProperty('v'); echo $property->getValue($c2); echo new ReflectionProperty(P::class, 'v')->getValue($c2); $c2->output();
Output for 8.4.10
112

preferences:
148.25 ms | 994 KiB | 7 Q