3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Start set_time_limit(0); echo "<pre>"; // Normal Recusion function m1($num) { return $num === 0 ? 1 : $num * m1($num - 1); } // Tail Recusion function m2($num) { return m2Helper($num, 1); } // Tail Recusion Helper function m2Helper($num, $acc) { return $num === 0 ? $acc : m2($num - 1, $acc * $num); } $result = array('m1' => 0,'m2' => 0); $no = 10; for($i = 0; $i < 1; ++ $i) { foreach ( array_keys($result) as $key ) { $alpha = microtime(true); $key($no); $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.0030.00719.38
7.1.70.0030.00316.92
7.1.60.0030.02119.40
7.1.50.0060.00616.95
7.1.00.0070.03022.36
7.0.200.0000.00816.46
7.0.140.0070.07021.95
7.0.60.0100.08320.05
7.0.50.0130.05017.88
7.0.40.0100.07320.24
7.0.30.0070.05320.16
7.0.20.0330.06320.33
7.0.10.0100.07720.06
7.0.00.0100.07720.13
5.6.280.0100.06720.82
5.6.210.0070.08320.70
5.6.200.0030.08318.16
5.6.190.0070.06020.77
5.6.180.0230.04720.64
5.6.170.0170.05020.45
5.6.160.0070.07320.54
5.6.150.0070.07318.18
5.6.140.0030.03718.16
5.6.130.0100.05718.18
5.6.120.0070.08020.99
5.6.110.0100.08721.05
5.6.100.0000.05321.14
5.6.90.0100.08321.11
5.6.80.0030.08020.39
5.5.350.3370.03720.43
5.5.340.0000.08318.03
5.5.330.0070.08320.37
5.5.320.0170.06320.30
5.5.310.0230.05720.32
5.5.300.0070.08018.01
5.5.290.0070.03718.02
5.5.280.0070.04320.86
5.5.270.0130.05320.77
5.5.260.0100.07320.77
5.5.250.0100.06020.68
5.5.240.0070.05720.12
5.4.450.0330.07319.47
5.4.440.0370.04319.41
5.4.430.0330.07319.38
5.4.420.0270.05719.39
5.4.410.0230.03719.14
5.4.400.0230.03718.99
5.4.390.0230.04719.25
5.4.380.0230.05319.00
5.4.370.0330.06318.95
5.4.360.0270.07318.98
5.4.350.0270.05019.15
5.4.340.0230.06318.87
5.4.320.0200.04319.22
5.4.310.0300.03019.09
5.4.300.0230.04319.09
5.4.290.0230.07019.14
5.4.280.0230.04019.13
5.4.270.0270.06018.84
5.4.260.0370.05319.19
5.4.250.0230.03719.14
5.4.240.0170.07318.99
5.4.230.0270.04019.21
5.4.220.0400.06319.21
5.4.210.0370.05019.08
5.4.200.0270.06319.08
5.4.190.0300.06718.83
5.4.180.0300.04319.13
5.4.170.0370.06719.18
5.4.160.0300.05719.00
5.4.150.0300.07019.13
5.4.140.0270.06016.41
5.4.130.0270.03716.55
5.4.120.0330.06716.34
5.4.110.0230.05016.61
5.4.100.0200.06316.24
5.4.90.0270.04016.32
5.4.80.0200.03716.49
5.4.70.0200.03316.32
5.4.60.0230.06316.55
5.4.50.0200.06716.25
5.4.40.0300.05316.34
5.4.30.0330.06716.49
5.4.20.0370.03716.32
5.4.10.0370.05716.48
5.4.00.0330.03315.90
5.3.290.0270.05014.65
5.3.280.0300.07314.56
5.3.270.0230.03714.53
5.3.260.0370.03014.53
5.3.250.0270.07314.54
5.3.240.0400.06314.59
5.3.230.0270.05014.75
5.3.220.0230.05014.58
5.3.210.0270.07314.48
5.3.200.0330.03714.55
5.3.190.0300.06714.56
5.3.180.0230.06014.48
5.3.170.0300.06314.58
5.3.160.0370.05714.48
5.3.150.0330.06314.54
5.3.140.0330.06714.48
5.3.130.0270.06714.67
5.3.120.0270.05314.57
5.3.110.0300.05714.61
5.3.100.0300.06014.20
5.3.90.0200.05314.04
5.3.80.0270.06314.03
5.3.70.0300.04313.94
5.3.60.0300.04014.10
5.3.50.0300.06713.96
5.3.40.0330.07013.93
5.3.30.0230.04313.84
5.3.20.0300.06713.61
5.3.10.0330.03713.58
5.3.00.0270.07313.76
5.2.170.0200.05313.00
5.2.160.0230.06013.00
5.2.150.0170.03713.00
5.2.140.0200.04013.00
5.2.130.0270.03313.00
5.2.120.0200.05313.00
5.2.110.0130.06313.00
5.2.100.0300.05013.00
5.2.90.0200.03313.00
5.2.80.0130.05313.00
5.2.70.0200.03313.00
5.2.60.0270.05313.00
5.2.50.0130.03013.00
5.2.40.0130.02713.00
5.2.30.0200.05713.00
5.2.20.0100.03313.00
5.2.10.0200.05313.00
5.2.00.0170.03313.00
5.1.60.0170.03713.00
5.1.50.0200.05013.00
5.1.40.0130.05313.00
5.1.30.0230.03013.00
5.1.20.0130.05713.00
5.1.10.0200.04013.00
5.1.00.0270.03313.00
5.0.50.0100.02713.00
5.0.40.0230.03313.00
5.0.30.0170.04313.00
5.0.20.0170.03713.00
5.0.10.0070.03313.00
5.0.00.0170.05713.00
4.4.90.0070.01713.00
4.4.80.0100.03313.00
4.4.70.0130.03313.00
4.4.60.0100.02313.00
4.4.50.0100.02013.00
4.4.40.0130.02713.00
4.4.30.0130.01713.00
4.4.20.0070.04013.00
4.4.10.0070.03713.00
4.4.00.0100.05013.00
4.3.110.0200.03713.00
4.3.100.0100.03313.00
4.3.90.0130.01713.00
4.3.80.0100.03313.00
4.3.70.0070.02713.00
4.3.60.0070.02013.00
4.3.50.0100.03013.00
4.3.40.0100.05313.00
4.3.30.0070.03313.00
4.3.20.0000.03713.00
4.3.10.0070.03313.00
4.3.00.0030.03313.00

preferences:
35.12 ms | 401 KiB | 5 Q