3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php class Super { protected $child; function setChild(Child $child){ $this->child = $child; if($child->getSuper() !== $this) $child->setSuper($this); } } class Child { protected $super; function setSuper(Super $super){ $this->super = $super; $this->super->addChild($this); } function getSuper(){ return $this->super; } } $super = new Super; $child = new Child; $super->setChild($child); var_dump($super); $super = new Super; $child = new Child; $child->setSuper($super); var_dump($super);
based on FvelE
Output for 7.0.0 - 7.2.0
Fatal error: Uncaught Error: Call to undefined method Super::addChild() in /in/TvcXf:22 Stack trace: #0 /in/TvcXf(11): Child->setSuper(Object(Super)) #1 /in/TvcXf(32): Super->setChild(Object(Child)) #2 {main} thrown in /in/TvcXf on line 22
Process exited with code 255.
Output for 5.3.19 - 5.6.28
Fatal error: Call to undefined method Super::addChild() in /in/TvcXf on line 22
Process exited with code 255.