3v4l.org

run code in 300+ PHP versions simultaneously
<?php class myName{ private $prop; public function __construct($value){ $this->prop = $value; } public function returnPrivate(){ return $this->prop; } } $oldObject = new myName('The named way'); echo $oldObject->returnPrivate()."\n"; class myNameExt extends myName{ public function returnPrivate(){ return $this->prop.' from named extension'; } } $extObject = new myNameExt('The named extension'); echo $extObject->returnPrivate()."\n"; $newObj = new class('The anonymous way') extends myName{ public function returnPrivate(){ return $this->prop.' with override'; } }; echo $newObj->returnPrivate();
Output for git.master, git.master_jit, rfc.property-hooks
The named way Warning: Undefined property: myNameExt::$prop in /in/Q2vXX on line 28 from named extension Warning: Undefined property: myName@anonymous::$prop in /in/Q2vXX on line 42 with override

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:
56.75 ms | 401 KiB | 8 Q