3v4l.org

run code in 300+ PHP versions simultaneously
<?php function sum() { $list = array(); $prepare = function($value) use(&$prepare, &$list) { if (is_array($value)) { return $prepare(array_merge($list, $value));//array_map($prepare, ); } $list[] = $value; }; $args = func_get_args(); array_walk($args, $prepare, $list); var_dump($list); return addition(0, $list); } function addition($sum, array &$list) { return empty($list) ? $sum : addition($sum + array_pop($list), $list); } $vars = range(1, 10); echo sum(array($vars), array(1));

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)
8.3.60.0700.02773.36
8.3.50.0770.03572.20
8.3.40.0160.03244.79
8.3.30.0410.01745.60
8.3.20.0270.03049.02
8.2.180.0640.03772.50
8.2.170.0430.01044.91
8.2.160.0280.03147.21
8.2.150.0230.01647.05
8.1.280.0430.03771.85
7.4.10.0170.05770.74
7.4.00.0320.04270.49
7.3.130.0340.05278.33
7.3.120.0260.04577.98
7.3.110.0500.03778.04
7.3.100.0450.01978.35
7.3.90.0390.04278.20
7.3.80.0170.04477.82
7.3.70.0320.02978.27
7.3.60.0410.02478.00
7.3.50.0270.04378.14
7.3.40.0450.01977.84
7.3.30.0290.03278.02
7.3.20.0130.02978.51
7.3.10.0130.02078.15
7.3.00.0280.02578.45
7.2.260.0360.05378.31
7.2.250.0390.03678.27
7.2.240.0130.04978.24
7.2.230.0340.04178.42
7.2.220.0230.05978.28
7.2.210.0230.04078.16
7.2.200.0460.02078.36
7.2.190.0530.02778.33
7.2.180.0330.03678.23
7.2.170.0230.04078.43
7.2.160.0390.02678.16
7.2.150.0130.03378.76
7.2.140.0230.03978.96
7.2.130.0290.03578.82
7.2.120.0120.04378.57
7.2.110.0150.04078.71
7.2.100.0380.01978.84
7.2.90.0300.04078.68
7.2.80.1160.02678.70
7.2.70.0080.00813.37
7.2.60.1050.02878.97
7.2.50.0210.00013.37
7.2.40.0210.00013.37
7.2.30.0300.03378.70
7.2.20.0500.04078.95
7.2.10.0350.02978.75
7.2.00.0350.02380.25
7.1.330.0130.03577.69
7.1.320.0200.03977.51
7.1.310.0100.03577.76
7.1.300.0170.04477.63
7.1.290.0940.03477.59
7.1.280.3450.02677.83
7.1.270.0200.02777.61
7.1.260.0320.03977.79
7.1.250.1980.04377.71
7.1.240.0140.05277.54
7.1.230.1020.04177.74
7.1.220.0190.04177.84
7.1.210.0320.03877.84
7.1.200.0710.02977.69
7.1.190.0300.04177.69
7.1.180.0270.03977.84
7.1.170.0290.04877.89
7.1.160.0320.04577.80
7.1.150.0250.04977.93
7.1.140.0420.02977.52
7.1.130.0340.03777.69
7.1.120.0170.04877.81
7.1.110.0150.05177.64
7.1.100.0400.04078.76
7.1.90.0300.04077.72
7.1.80.0330.03777.79
7.1.70.1140.02978.46
7.1.60.0300.03778.16
7.1.50.0400.03378.36
7.1.40.0470.03077.75
7.1.30.0430.04077.59
7.1.20.0340.04477.92
7.1.10.0390.03077.74
7.1.00.0280.06781.02
7.0.330.0210.04277.48
7.0.320.0220.04477.26
7.0.310.0160.00413.37
7.0.300.0230.04977.49
7.0.290.0270.04777.60
7.0.280.0400.03077.27
7.0.270.0240.04877.26
7.0.260.0280.04977.54
7.0.250.0340.04077.36
7.0.240.0280.03677.47
7.0.230.0670.04677.41
7.0.220.0800.04477.25
7.0.210.0300.04077.44
7.0.200.3180.04578.07
7.0.190.0180.01315.31
7.0.180.0330.04677.36
7.0.170.0560.02977.42
7.0.160.0340.04777.39
7.0.150.0490.03877.32
7.0.140.0360.04477.39
7.0.130.0320.03977.43
7.0.120.0430.03777.36
7.0.110.0480.03377.60
7.0.100.0580.02777.43
7.0.90.0330.04877.40
7.0.80.0320.05277.45
7.0.70.0220.04777.27
7.0.60.0420.06380.34
7.0.50.0300.04379.25
7.0.40.0170.06816.91
7.0.30.0510.05116.94
7.0.20.0320.07016.85
7.0.10.0090.05616.98
7.0.00.0200.06316.84
5.6.400.0300.09079.50
5.6.390.0460.09379.49
5.6.380.0490.07979.44
5.6.370.0520.07779.07
5.6.360.0450.08679.09
5.6.350.0410.10279.49
5.6.340.0620.07179.57
5.6.330.0370.10679.13
5.6.320.0310.09679.29
5.6.310.0470.10379.29
5.6.300.0330.09779.07
5.6.290.0500.08379.21
5.6.280.0410.09182.57
5.6.270.0510.09579.42
5.6.260.0200.10179.24
5.6.250.0460.08679.44
5.6.240.0470.07779.37
5.6.230.0350.09479.31
5.6.220.0450.09379.27
5.6.210.0440.10982.61
5.6.200.0410.08481.17
5.6.190.0470.10282.19
5.6.180.0410.08482.38
5.6.170.0510.08282.40
5.6.160.0390.11282.21
5.6.150.0470.08681.09
5.6.140.0400.10981.31
5.6.130.0280.12181.32
5.6.120.0210.09882.69
5.6.110.0270.10682.45
5.6.100.0450.09282.57
5.6.90.0350.08182.57
5.6.80.0420.10382.24
5.6.70.2400.10182.25
5.6.60.0510.08978.97
5.6.50.0520.07379.04
5.6.40.0240.10479.25
5.6.30.0380.08779.40
5.6.20.0580.07179.43
5.6.10.0440.09479.06
5.6.00.0450.07679.38
5.5.380.0320.09079.11
5.5.370.0440.08479.43
5.5.360.0510.09779.03
5.5.350.0290.09482.20
5.5.340.0360.10981.06
5.5.330.0380.10382.03
5.5.320.0390.11682.23
5.5.310.0520.10182.13
5.5.300.0360.11281.07
5.5.290.0310.11381.02
5.5.280.0390.10982.50
5.5.270.0460.09482.55
5.5.260.0320.11882.47
5.5.250.0430.11682.33
5.5.240.2430.08982.14
5.5.230.0360.08679.28
5.5.220.0250.10479.23
5.5.210.0390.08879.18
5.5.200.0720.06979.20
5.5.190.0390.08779.27
5.5.180.0400.11479.21
5.5.170.0410.10378.87
5.5.160.0450.09479.24
5.5.150.0370.08979.09
5.5.140.0450.07779.03
5.5.130.0430.09079.32
5.5.120.0440.08978.92
5.5.110.0350.09079.25
5.5.100.0580.07179.24
5.5.90.0380.08779.26
5.5.80.0340.09279.10
5.5.70.0450.08479.21
5.5.60.0430.08279.38
5.5.50.0340.11079.11
5.5.40.0530.09379.34
5.5.30.0240.12679.21
5.5.20.0460.08979.10
5.5.10.0490.11279.29
5.5.00.0500.08478.91
5.4.450.0520.13280.16
5.4.440.0850.11980.15
5.4.430.0770.12380.22
5.4.420.0820.12180.07
5.4.410.0480.13380.29
5.4.400.0430.13079.93
5.4.390.0510.12980.09
5.4.380.0430.13779.89
5.4.370.0510.13580.09
5.4.360.0430.12579.96
5.4.350.0400.12479.91
5.4.340.0530.14380.06
5.4.330.0430.10776.20
5.4.320.0570.11079.85
5.4.310.0620.11280.17
5.4.300.0570.11379.99
5.4.290.0590.12779.94
5.4.280.0580.13579.92
5.4.270.0620.15779.99
5.4.260.0740.13979.92
5.4.250.0520.11779.84
5.4.240.0440.13780.17
5.4.230.0510.12880.05
5.4.220.0510.12580.02
5.4.210.0550.11579.88
5.4.200.0470.11978.73
5.4.190.0470.13479.66
5.4.180.0440.11980.05
5.4.170.0500.14279.95
5.4.160.0650.15779.82
5.4.150.0540.16379.94
5.4.140.0440.12278.53
5.4.130.0580.11178.75
5.4.120.0440.13178.75
5.4.110.0530.10778.75
5.4.100.0530.12978.67
5.4.90.0470.11478.67
5.4.80.0610.12178.61
5.4.70.0540.11478.87
5.4.60.0230.13378.59
5.4.50.0260.10378.54
5.4.40.0430.10278.63
5.4.30.0510.10678.67
5.4.20.0450.09778.65
5.4.10.0330.11275.66
5.4.00.0340.09875.93

preferences:
39.55 ms | 401 KiB | 5 Q