3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface NodeInterface { public function addNode(Node $node); public function hasNodes(); public function getKey(); public function setKey($key); public function getNodes(); public function nodes(); public function getUid(); public function uid(); public function key(); } interface LeafInterface extends NodeInterface { public function getValue(); public function vlaue(); } abstract class AbstractNode implements NodeInterface { protected $uid; protected $nodes; protected $key; public function __construct($key) { $this->uid = rand(0, 9) . md5(rand(10, 99) . time() . rand(100, 999)) . rand(1000, 9999); $this->key = $key; $this->nodes = []; } public function getKey() { return $this->value->key; } public function key() { return $this->value->key; } public function setKey($key) { $this->value->key = $key; return $this; } public function getUid() { return $this->uid; } public function uid() { return $this->uid; } } class ArrNode extends AbstractNode { public function addNode(Node $node) { $this->nodes[] = $node; return $this; } public function hasNodes() { return count($this->nodes) > 0; } public function getNodes() { return $this->nodes; } public function nodes() { return $this->nodes; } } class ArrLeaf extends AbstractNode implements LeafInterface { protected $value; public function __construct($key, $value) { parent::__construct($key); $this->value = $value; } public function addNode(Node $node) { return false; } public function hasNodes() { return false; } public function getNodes() { return false; } public function nodes() { return false; } public function getValue() { return $this->value; } public function value() { return $this->value; } } $pk = new ArrComp('pk'); $pkAttrs = new ArrComp('@attributes'); $pkAttrs->addNode(new ArraLeaf('excl', 'web_actions')); $pkAttrs->addNode(new ArraLeaf('system', 'depWEBsys')); $pkAttrs->addNode(new ArraLeaf('id', 'packet20130905133323986')); $comp->addNode($pkAttrs); var_dump($comp);

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
7.3.120.0080.00814.59
7.3.110.0100.00315.10
7.3.100.0120.00414.68
7.3.90.0100.00714.98
7.3.80.0100.00314.90
7.3.70.0030.00914.85
7.3.60.0060.00614.89
7.3.50.0080.00414.72
7.3.40.0000.01414.64
7.3.30.0070.00314.80
7.3.20.0070.01016.60
7.3.10.0050.00516.43
7.3.00.0080.00816.59
7.2.240.0060.00614.69
7.2.230.0130.00015.04
7.2.220.0030.00915.00
7.2.210.0070.01014.73
7.2.200.0060.00914.95
7.2.190.0100.00714.64
7.2.180.0070.01015.02
7.2.170.0060.00914.96
7.2.160.0070.01014.79
7.2.150.0120.00316.72
7.2.140.0030.01516.77
7.2.130.0060.00616.35
7.2.120.0070.00716.48
7.2.110.0030.00716.47
7.2.100.0060.00916.71
7.2.90.0030.01516.98
7.2.80.0040.00716.86
7.2.70.0120.00316.96
7.2.60.0100.00716.91
7.2.50.0070.00716.95
7.2.40.0090.00616.38
7.2.30.0070.01116.63
7.2.20.0100.00716.82
7.2.10.0120.00316.88
7.2.00.0080.00617.92
7.1.330.0070.00715.48
7.1.320.0060.00915.51
7.1.310.0040.01215.67
7.1.300.0040.00815.62
7.1.290.0060.00615.69
7.1.280.0030.01115.52
7.1.270.0070.01015.43
7.1.260.0090.00615.69
7.1.250.0060.00715.80
7.1.70.0060.00617.00
7.1.60.0110.01119.32
7.1.50.0090.01216.83
7.1.00.0030.07722.31
7.0.200.0040.00416.70
7.0.140.0000.07722.21
7.0.100.0030.04319.96
7.0.90.0000.05319.93
7.0.80.0100.07719.95
7.0.70.0070.08319.89
7.0.60.0070.06719.96
7.0.50.0070.09020.39
7.0.40.0070.08320.18
7.0.30.0100.08319.93
7.0.20.0100.06320.03
7.0.10.0100.08019.99
7.0.00.0070.05020.10
5.6.280.0070.07021.15
5.6.250.0070.04720.67
5.6.240.0030.05020.79
5.6.230.0030.07020.66
5.6.220.0100.08020.61
5.6.210.0030.08320.78
5.6.200.0200.06321.07
5.6.190.0100.04320.97
5.6.180.0070.08021.08
5.6.170.0070.04321.07
5.6.160.0130.07321.11
5.6.150.0030.05020.99
5.6.140.0070.07321.20
5.6.130.0070.06321.14
5.6.120.0000.05321.05
5.6.110.0000.06021.08
5.6.100.0000.08721.16
5.6.90.0130.07021.03
5.6.80.0100.08020.55
5.6.70.0130.07320.47
5.6.60.0030.08020.38
5.6.50.0130.05320.48
5.6.40.0070.05720.47
5.6.30.0100.05720.50
5.6.20.0070.05320.46
5.6.10.0200.06720.32
5.6.00.0070.07320.42
5.5.380.0170.04020.55
5.5.370.0100.04720.60
5.5.360.0100.07720.44
5.5.350.0100.08020.42
5.5.340.0070.08320.68
5.5.330.0070.07320.93
5.5.320.0100.08020.93
5.5.310.0130.03320.93
5.5.300.0030.07020.79
5.5.290.0000.08320.68
5.5.280.0070.05020.79
5.5.270.0030.08020.92
5.5.260.0030.05320.89
5.5.250.0100.07020.76
5.5.240.0070.05720.34
5.5.230.0070.06320.34
5.5.220.0100.06720.21
5.5.210.0030.04320.33
5.5.200.0070.04320.18
5.5.190.0070.07720.14
5.5.180.0170.06720.12
5.5.160.0070.04320.29
5.5.150.0070.05720.02
5.5.140.0030.08020.17
5.5.130.0130.07320.03
5.5.120.0130.06320.27
5.5.110.0100.07720.30
5.5.100.0070.07720.11
5.5.90.0170.06720.15
5.5.80.0100.04320.13
5.5.70.0200.06319.97
5.5.60.0070.08020.12
5.5.50.0030.07720.09
5.5.40.0100.04719.99
5.5.30.0130.07020.11
5.5.20.0030.06319.96
5.5.10.0100.07320.08
5.5.00.0130.03720.14
5.4.450.0000.08019.29
5.4.440.0030.05019.55
5.4.430.0130.07719.45
5.4.420.0070.07719.53
5.4.410.0070.07719.40
5.4.400.0070.05718.90
5.4.390.0100.07718.91
5.4.380.0100.04718.95
5.4.370.0030.07319.23
5.4.360.0070.05018.88
5.4.350.0100.07018.85
5.4.340.0130.06019.12
5.4.320.0100.04719.18
5.4.310.0070.08019.23
5.4.300.0070.07019.09
5.4.290.0170.03318.95
5.4.280.0030.05719.09
5.4.270.0070.07318.84
5.4.260.0070.07019.23
5.4.250.0100.07018.84
5.4.240.0130.06318.89
5.4.230.0130.07319.22
5.4.220.0070.08019.08
5.4.210.0030.08319.12
5.4.200.0100.06718.90
5.4.190.0070.03719.13
5.4.180.0070.07319.20
5.4.170.0100.07319.12
5.4.160.0130.07319.10
5.4.150.0070.06319.10
5.4.140.0030.04016.55
5.4.130.0070.06016.42
5.4.120.0070.05716.50
5.4.110.0000.07316.39
5.4.100.0070.07016.40
5.4.90.0030.07716.47
5.4.80.0030.07316.50
5.4.70.0100.07016.51
5.4.60.0070.06716.38
5.4.50.0030.04716.36
5.4.40.0130.06716.46
5.4.30.0100.06716.31
5.4.20.0070.04016.26
5.4.10.0000.04716.46
5.4.00.0070.06715.91
5.3.290.0070.04714.72
5.3.280.0030.04714.68
5.3.270.0000.07014.55
5.3.260.0100.07014.73
5.3.250.0030.05714.55
5.3.240.0070.04714.58
5.3.230.0070.08014.66
5.3.220.0030.06314.59
5.3.210.0030.08314.50
5.3.200.0130.07014.53
5.3.190.0000.08714.57
5.3.180.0100.06714.57
5.3.170.0030.07014.64
5.3.160.0030.06314.53
5.3.150.0070.06014.54
5.3.140.0070.07014.60
5.3.130.0070.08014.58
5.3.120.0030.07714.53
5.3.110.0070.07714.70
5.3.100.0030.06714.11
5.3.90.0030.04714.10
5.3.80.0030.08013.93
5.3.70.0030.04314.04
5.3.60.0030.06714.14
5.3.50.0000.06014.06
5.3.40.0100.06713.97
5.3.30.0030.05313.93
5.3.20.0030.05713.71
5.3.10.0030.07013.68
5.3.00.0100.07313.70
5.2.170.0030.06311.06
5.2.160.0070.06011.22
5.2.150.0030.05011.06
5.2.140.0030.06011.07
5.2.130.0030.06011.01
5.2.120.0030.05011.05
5.2.110.0070.06711.18
5.2.100.0100.05311.14
5.2.90.0030.05311.12
5.2.80.0070.06011.20
5.2.70.0100.05311.04
5.2.60.0070.05711.16
5.2.50.0100.05310.90
5.2.40.0000.03011.03
5.2.30.0030.04310.98
5.2.20.0030.06711.05
5.2.10.0000.04710.98
5.2.00.0000.06310.84
5.1.60.0030.05010.34
5.1.50.0100.05010.34
5.1.40.0000.04710.34
5.1.30.0030.02310.41
5.1.20.0000.03010.44
5.1.10.0030.05310.34
5.1.00.0000.06010.34
5.0.50.0000.05010.34
5.0.40.0030.03710.34
5.0.30.0030.06310.34
5.0.20.0030.04010.34
5.0.10.0000.04010.34
5.0.00.0000.05010.34
4.4.90.0030.03010.34
4.4.80.0000.03710.34
4.4.70.0030.02010.34
4.4.60.0070.01310.34
4.4.50.0030.03010.34
4.4.40.0000.04710.34
4.4.30.0030.03710.34
4.4.20.0000.03710.34
4.4.10.0030.03310.34
4.4.00.0070.05310.34
4.3.110.0000.03710.34
4.3.100.0030.01710.34
4.3.90.0070.03310.34
4.3.80.0070.04710.34
4.3.70.0070.02010.34
4.3.60.0070.02710.34
4.3.50.0000.03710.34
4.3.40.0030.04710.34
4.3.30.0070.03010.34
4.3.20.0000.03310.34
4.3.10.0030.02310.34
4.3.00.0000.02310.34

preferences:
37.61 ms | 400 KiB | 5 Q