3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface NodeInterface { public function eval() : int; } class Node implements NodeInterface { public int $value; public string $sign; public ?Node $rightChild = null; public ?Node $leftChild = null; public function eval() : int { if (null != $this->rightChild) { return $this->value; } switch ($this->sign) { case "+": return $this->leftChild->value + $this->rightChild->value; //... } } } $root = new Node(); $root->value = 10; echo $root->eval();
Output for git.master, git.master_jit, rfc.property-hooks
Fatal error: Uncaught Error: Typed property Node::$sign must not be accessed before initialization in /in/BgJh6:21 Stack trace: #0 /in/BgJh6(31): Node->eval() #1 {main} thrown in /in/BgJh6 on line 21
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:
60.02 ms | 401 KiB | 8 Q