3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php trait setData { static function setData( $data ) { DataCollector::collectedData( 'set', $data ); } } trait dataHandler { use setData; private static function getCollectedData() { return DataCollector::collectedData( 'get' ); } private static function collectedData( $type, $value = NULL ) { if( strtolower( $type ) === 'set' ) { DataCollector::$CollectionData[] = $value; var_dump( DataCollector::$CollectionData ); } elseif( strtolower( $type ) === 'get' ) return DataCollector::$CollectionData; } } class DataCollector { use dataHandler { getCollectedData as public; collectedData as public; } private static $CollectionData = array(); } class Field { use setData {} } class TextField extends Field { public function __construct( $type, $text = NULL ) { $this->setData( $type ); } } /* class A { use setData{} public function __construct( $type, $text = NULL ) { $this->setData( $type ); } } */ $Field1 = new TextField( '1' ); $Field2 = new TextField( '2' ); #$A = new A( '3' ); #DataCollector::setData('4'); #dataHandler::setData('5'); var_dump( DataCollector::getCollectedData() );

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).
Note: hhvm uses a JIT which only kicks in after a few runs. Since we run scripts only once, hhvm always runs slower.

VersionSystem time (s)User time (s)Memory (MiB)
7.2.60.0150.00816.23
7.2.50.0000.01716.97
7.1.200.0060.00915.68
7.1.70.0030.00617.07
7.1.60.0100.00719.82
7.1.50.0040.01116.89
7.1.00.0030.03722.40
7.0.200.0100.00316.78
7.0.140.0070.07322.08
7.0.100.0100.07320.00
7.0.90.0070.05319.89
7.0.80.0070.03719.95
7.0.70.0070.03719.91
7.0.60.0070.07319.83
7.0.50.0030.04320.32
7.0.40.0030.04720.13
7.0.30.0070.03720.11
7.0.20.0030.04020.09
7.0.10.0030.05720.09
7.0.00.0000.04720.09
5.6.280.0170.06020.93
5.6.250.0000.07720.67
5.6.240.0100.05320.73
5.6.230.0030.04720.76
5.6.220.0070.04320.50
5.6.210.0100.07020.57
5.6.200.0000.04721.05
5.6.190.0030.04320.96
5.6.180.0100.06720.95
5.6.170.0100.05721.18
5.6.160.0030.03721.07
5.6.150.0030.04321.03
5.6.140.0100.03321.05
5.6.130.0070.03721.08
5.6.120.0100.06721.18
5.6.110.0030.04321.02
5.6.100.0000.04721.00
5.6.90.0070.04021.00
5.6.80.0030.04320.50
5.6.70.0070.07720.35
5.6.60.0030.07720.48
5.6.50.0070.08020.43
5.6.40.0100.07320.50
5.6.30.0100.04320.44
5.6.20.0130.06020.47
5.6.10.0130.07320.48
5.6.00.0030.07720.35
5.5.380.0130.08020.52
5.5.370.0130.03320.52
5.5.360.0100.04320.51
5.5.350.0030.04320.46
5.5.340.0100.03720.74
5.5.330.0170.06720.82
5.5.320.0100.03320.78
5.5.310.0100.03320.92
5.5.300.0030.05320.84
5.5.290.0100.03720.75
5.5.280.0070.04020.74
5.5.270.0070.04020.89
5.5.260.0070.04020.79
5.5.250.0000.04320.55
5.5.240.0070.06320.17
5.5.230.0100.07020.25
5.5.220.0070.07720.02
5.5.210.0100.07720.26
5.5.200.0170.05020.07
5.5.190.0070.08020.14
5.5.180.0130.05320.07
5.5.160.0130.07320.27
5.5.150.0030.06720.18
5.5.140.0030.06320.19
5.5.130.0100.07720.11
5.5.120.0100.07020.23
5.5.110.0070.04320.14
5.5.100.0030.07720.09
5.5.90.0070.06320.07
5.5.80.0170.08020.13
5.5.70.0070.04320.07
5.5.60.0070.06320.14
5.5.50.0070.07719.97
5.5.40.0070.07720.15
5.5.30.0070.08320.16
5.5.20.0070.07319.91
5.5.10.0100.04020.07
5.5.00.0030.08320.12
5.4.450.0000.04319.20
5.4.440.0070.03319.23
5.4.430.0000.05019.46
5.4.420.0100.03319.56
5.4.410.0030.05719.40
5.4.400.0100.07019.04
5.4.390.0030.06319.18
5.4.380.0100.04319.18
5.4.370.0070.07018.95
5.4.360.0100.07719.20
5.4.350.0030.08319.18
5.4.340.0170.05718.88
5.4.320.0100.07019.16
5.4.310.0030.05319.05
5.4.300.0070.07719.18
5.4.290.0070.08019.06
5.4.280.0130.06319.02
5.4.270.0030.05718.92
5.4.260.0070.07719.09
5.4.250.0000.05719.22
5.4.240.0100.07718.89
5.4.230.0130.07319.17
5.4.220.0170.06719.11
5.4.210.0130.07019.09
5.4.200.0070.07018.86
5.4.190.0000.04318.99
5.4.180.0070.07719.24
5.4.170.0030.07719.20
5.4.160.0030.08319.02
5.4.150.0070.04719.12
5.4.140.0030.08016.39
5.4.130.0030.07716.50
5.4.120.0070.07016.39
5.4.110.0100.07316.46
5.4.100.0030.07716.57
5.4.90.0100.04716.56
5.4.80.0030.07316.50
5.4.70.0000.08016.36
5.4.60.0070.07016.48
5.4.50.0100.04716.30
5.4.40.0030.08016.50
5.4.30.0030.08016.44
5.4.20.0030.08016.29
5.4.10.0070.06716.48
5.4.00.0130.05715.86
5.3.290.0130.07714.52
5.3.280.0100.07714.54
5.3.270.0100.07314.45
5.3.260.0030.07014.46
5.3.250.0030.07714.55
5.3.240.0070.08014.62
5.3.230.0030.07714.56
5.3.220.0070.06014.55
5.3.210.0130.03314.58
5.3.200.0130.06714.42
5.3.190.0270.06314.40
5.3.180.0130.06314.48
5.3.170.0130.04314.43
5.3.160.0030.04314.54
5.3.150.0100.07314.57
5.3.140.0100.07314.41
5.3.130.0100.04014.41
5.3.120.0100.07314.52
5.3.110.0030.08314.40
5.3.100.0070.07714.03
5.3.90.0030.07714.03
5.3.80.0030.07713.99
5.3.70.0100.07014.00
5.3.60.0070.07013.99
5.3.50.0130.06313.92
5.3.40.0030.05313.89
5.3.30.0000.08013.76
5.3.20.0070.07313.45
5.3.10.0070.06713.60
5.3.00.0070.06313.49
5.2.170.0030.05311.10
5.2.160.0130.05311.12
5.2.150.0070.05310.95
5.2.140.0070.05711.10
5.2.130.0070.06011.16
5.2.120.0200.04011.14
5.2.110.0030.05711.09
5.2.100.0070.06011.12
5.2.90.0030.06711.09
5.2.80.0100.05711.01
5.2.70.0100.06011.04
5.2.60.0070.04310.84
5.2.50.0070.06011.00
5.2.40.0070.04310.79
5.2.30.0070.06010.79
5.2.20.0030.05711.03
5.2.10.0070.06010.90
5.2.00.0130.04710.64
5.1.60.0030.04710.05
5.1.50.0070.05010.02
5.1.40.0030.04010.04
5.1.30.0100.05010.21
5.1.20.0070.05310.38
5.1.10.0030.06010.05
5.1.00.0100.0509.90
5.0.50.0000.0438.56
5.0.40.0000.0278.50
5.0.30.0000.0338.50
5.0.20.0030.0408.50
5.0.10.0030.0338.50
5.0.00.0100.0538.50
4.4.90.0030.0338.50
4.4.80.0030.0308.50
4.4.70.0030.0338.50
4.4.60.0000.0338.50
4.4.50.0000.0278.50
4.4.40.0070.0508.50
4.4.30.0030.0378.50
4.4.20.0000.0338.50
4.4.10.0070.0278.50
4.4.00.0030.0378.50
4.3.110.0030.0278.50
4.3.100.0030.0238.50
4.3.90.0030.0338.50
4.3.80.0000.0308.50
4.3.70.0030.0208.50
4.3.60.0000.0378.50
4.3.50.0070.0378.50
4.3.40.0070.0278.50
4.3.30.0000.0308.50
4.3.20.0000.0278.50
4.3.10.0030.0378.50
4.3.00.0030.0338.50