3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface INode { public function connectToEdge(Edge $edge); } final class Node extends Nette\Object implements INode { private $name; private $value = null; private $edges = array(); public function __construct($name, $value = null) { $this->name = $name; $this->value = $value; } public function getName() { return $this->name; } public function getValue() { return $this->value; } public function connectToEdge(Edge $edge) { $this->edges[spl_object_hash($edge)] = $edge; } } final class Edge extends Nette\Object { private $nodeFrom; private $nodeTo; private $directional = true; private $name = null; public function __construct(Node $nodeFrom, Node $nodeTo, $directional = true, $name = null) { $this->nodeFrom = $nodeFrom; $this->nodeTo = $nodeTo; $this->directional = $directional; $this->name = $name; $this->nodeFrom->connectToEdge($this); $this->nodeTo->connectToEdge($this); } } $node1 = new Node('uzel_1'); $node2 = new Node('uzel_2'); $edge1 = new Edge($node1, $node2, true, 'hrana mezi uzel_1 - uzel_2'); $edge2 = new Edge($node1, $node2, true, 'hrana mezi uzel_1 - uzel_2 v2'); dump(spl_object_hash($edge1)); dump(spl_object_hash($edge2));
Output for git.master, git.master_jit, rfc.property-hooks
Fatal error: Uncaught Error: Class "Nette\Object" not found in /in/N3Blj:8 Stack trace: #0 {main} thrown in /in/N3Blj on line 8
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:
33.37 ms | 401 KiB | 8 Q