3v4l.org

run code in 300+ PHP versions simultaneously
<?php set_time_limit(0); echo "<pre>"; // First Code function m1($a, $b) { $var = null; if ($a == 1) { if ($b == 1) { $var = 'test'; } } return $var; } // Secound Code function m2($a, $b) { $var = null; if ($a == 1 && $b == 1) { $var = 'test'; } return $var; } $result = array( 'm1' => 0, 'm2' => 0 ); // Make sure function get same results assert(m2(0, 0) === m1(0, 0)); assert(m2(1, 1) === m1(1, 1)); // Case 1 with only 1 for($i = 0; $i < 100000; ++ $i) { foreach(array_keys($result) as $key) { $alpha = microtime(true); $key(1, 1); $result[$key] += microtime(true) - $alpha; } } echo '<pre>'; echo "Single Run\n"; print_r($result); echo '</pre>'; // Case 2 with only 1 & 0; $n = 1; for($i = 0; $i < 100000; ++ $i) { foreach(array_keys($result) as $key) { $n = $n ? 0 : 1; $alpha = microtime(true); $key($n, $n); $result[$key] += microtime(true) - $alpha; } } echo '<pre>'; echo "Single Run\n"; print_r($result); echo '</pre>'; ?>

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.2.00.0000.10119.06
7.1.70.0000.13317.09
7.1.60.0100.17519.33
7.1.50.0130.14116.93
7.1.00.0030.24022.27
7.0.200.0030.13516.80
7.0.140.0000.23321.95
7.0.100.0030.15019.96
7.0.90.0200.23019.98
7.0.80.0130.22320.16
7.0.70.0130.20020.16
7.0.60.0070.23020.05
7.0.50.0070.18320.37
7.0.40.0000.15720.10
7.0.30.0030.13020.18
7.0.20.0000.18720.05
7.0.10.0100.14320.12
7.0.00.0000.15320.14
5.6.280.0100.36020.90
5.6.250.0100.37320.61
5.6.240.0330.27320.53
5.6.230.0030.30720.76
5.6.220.0070.36020.66
5.6.210.0070.37320.70
5.6.200.0130.30021.19
5.6.190.0070.30320.95
5.6.180.0030.30021.03
5.6.170.0030.25321.04
5.6.160.0000.26021.19
5.6.150.0070.25021.12
5.6.140.0000.26021.18
5.6.130.0100.28721.02
5.6.120.0170.29020.95
5.6.110.0030.35321.11
5.6.100.0030.34721.11
5.6.90.0070.35721.02
5.6.80.0030.27720.42
5.6.70.0030.35720.50
5.6.60.0070.35320.43
5.6.50.0170.36020.40
5.6.40.0070.33720.41
5.6.30.0070.34720.47
5.6.20.0030.35320.42
5.6.10.0030.37020.40
5.6.00.0100.29320.38
5.5.380.0070.31320.44
5.5.370.0100.38020.36
5.5.360.0170.42320.35
5.5.350.0100.37720.44
5.5.340.0070.32720.85
5.5.330.0070.32020.91
5.5.320.0070.29320.80
5.5.310.0030.26320.89
5.5.300.0070.33320.91
5.5.290.0100.34020.90
5.5.280.0030.35720.65
5.5.270.0100.35720.74
5.5.260.0070.37720.92
5.5.250.0070.29720.66
5.5.240.0030.37020.23
5.5.230.0100.30320.07
5.5.220.0030.33320.29
5.5.210.0100.35320.27
5.5.200.0070.38020.25
5.5.190.0070.40320.14
5.5.180.0100.36720.28
5.5.160.0130.36720.15
5.5.150.0030.38020.19
5.5.140.0070.41720.12
5.5.130.0070.38720.23
5.5.120.0070.33320.24
5.5.110.0070.36320.28
5.5.100.0070.33720.02
5.5.90.0030.26320.17
5.5.80.0070.33020.01
5.5.70.0130.33720.04
5.5.60.0500.36320.09
5.5.50.0100.37020.04
5.5.40.0170.37720.05
5.5.30.0100.39320.00
5.5.20.0070.36020.09
5.5.10.0030.38320.08
5.5.00.0100.37020.00
5.4.450.0000.30019.36
5.4.440.0000.35319.45
5.4.430.0070.38019.36
5.4.420.0100.36019.22
5.4.410.0100.40719.32
5.4.400.0000.33718.88
5.4.390.0070.38319.03
5.4.380.0070.40718.88
5.4.370.0030.37319.14
5.4.360.0030.36319.09
5.4.350.0030.33719.09
5.4.340.0030.38018.85
5.4.320.0030.36319.04
5.4.310.0030.28019.18
5.4.300.0070.39718.94
5.4.290.0030.37319.11
5.4.280.0070.35318.91
5.4.270.0070.41019.05
5.4.260.0030.39719.20
5.4.250.0070.30019.02
5.4.240.0100.37719.02
5.4.230.0170.37319.07
5.4.220.0200.34718.87
5.4.210.0100.37319.02
5.4.200.0030.40718.91
5.4.190.0070.36019.13
5.4.180.0130.35718.91
5.4.170.0000.39319.12
5.4.160.0070.36019.15
5.4.150.0100.36018.94
5.4.140.0170.41316.49
5.4.130.0100.37716.48
5.4.120.0070.36316.54
5.4.110.0070.35316.40
5.4.100.0100.38716.32
5.4.90.0030.38016.52
5.4.80.0100.36016.54
5.4.70.0070.38016.31
5.4.60.0030.37316.37
5.4.50.0030.37316.39
5.4.40.0070.31016.38
5.4.30.0100.34316.41
5.4.20.0070.38016.43
5.4.10.0070.37716.36
5.4.00.0030.38315.64
5.3.290.0030.39314.65
5.3.280.0100.38714.66
5.3.270.0400.38314.59
5.3.260.0030.32014.55
5.3.250.0070.38714.63
5.3.240.0130.38714.73
5.3.230.0030.39014.68
5.3.220.0070.40714.56
5.3.210.0100.43014.70
5.3.200.0030.42014.70
5.3.190.0100.36314.56
5.3.180.0030.38314.67
5.3.170.0070.37314.57
5.3.160.0000.36314.71
5.3.150.0070.40714.64
5.3.140.0030.36314.55
5.3.130.0070.37714.54
5.3.120.0000.29014.63
5.3.110.0030.40314.54
5.3.100.0130.39014.11
5.3.90.0130.39714.11
5.3.80.0030.39013.92
5.3.70.0030.35014.05
5.3.60.0000.36013.90
5.3.50.0070.39314.09
5.3.40.0000.41013.94
5.3.30.0130.36014.06
5.3.20.0000.36313.82
5.3.10.0000.34013.68
5.3.00.0030.31713.75
5.2.170.0070.46011.04
5.2.160.0000.40711.16
5.2.150.0030.47311.02
5.2.140.0070.45311.05
5.2.130.0070.41011.14
5.2.120.0070.40711.18
5.2.110.0000.36011.11
5.2.100.0030.37011.17
5.2.90.0030.42311.17
5.2.80.0000.42311.20
5.2.70.0000.35011.14
5.2.60.0000.33710.93
5.2.50.0000.37011.03
5.2.40.0530.34311.08
5.2.30.0600.36010.92
5.2.20.0070.46311.05
5.2.10.0000.34010.93
5.2.00.0030.43710.69
5.1.60.0070.43710.69
5.1.50.0000.33010.69
5.1.40.0000.44310.69
5.1.30.0030.47310.69
5.1.20.0070.45710.69
5.1.10.0100.49710.69
5.1.00.0030.44010.69
5.0.50.0000.68010.69
5.0.40.0000.69310.69
5.0.30.0000.69310.69
5.0.20.0000.70010.69
5.0.10.0000.62710.69
5.0.00.0000.68310.69
4.4.90.0000.73710.69
4.4.80.0000.75010.69
4.4.70.0000.99310.69
4.4.60.0030.92010.69
4.4.50.0000.87010.69
4.4.40.0030.90010.69
4.4.30.0000.73310.69
4.4.20.0030.87310.69
4.4.10.1130.68010.69
4.4.00.0030.87710.69
4.3.110.0070.87010.69
4.3.100.0000.76310.69
4.3.90.0001.06010.69
4.3.80.0001.12310.69
4.3.70.0001.07710.69
4.3.60.0001.12310.69
4.3.50.0001.03010.69
4.3.40.0000.95010.69
4.3.30.0031.10010.69
4.3.20.0231.16010.69
4.3.10.0001.08710.69
4.3.00.0031.07310.69

preferences:
34.6 ms | 400 KiB | 5 Q