3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { private $a; function __construct($a) { $this->a = $a; } public function getA() { return $this->a; } } class B extends A { function __construct() { parent::__construct('foo'); } } var_dump($b = new B); class C extends A { function __construct(A $a) { $a->a = 'bar'; $this->a = 'baz'; } } var_dump(new C($b)); var_dump($b->getA());

preferences:
61.74 ms | 402 KiB | 5 Q