3v4l.org

run code in 300+ PHP versions simultaneously
<?php function quicksort($array) { if (count($array) == 0) { return array(); } $pivot = $array[0]; $left = $right = array(); foreach($array as $object){ if ($object < $pivot) { $left[] = $object; } else { $right[] = $object; } } return array_merge(quicksort($left), array($pivot), quicksort($right)); } var_dump(quicksort([4, 10, 2, 6, 10, 1, 5]));

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.1040.01080.36
8.3.50.0720.03080.17
8.3.40.0510.02249.55
8.3.30.0530.03448.87
8.2.180.0820.01380.25
8.2.170.0450.01048.47
8.2.160.0530.00749.74
8.1.280.0640.02081.02
7.4.10.0400.03678.09
7.4.00.0360.03378.39
7.3.130.0330.03078.13
7.3.120.0430.03078.17
7.3.110.0450.02578.14
7.3.100.0340.02978.28
7.3.90.0450.02578.15
7.3.80.0300.02578.25
7.3.70.0340.02578.14
7.3.60.0300.03378.06
7.3.50.0330.01878.14
7.3.40.0360.03078.05
7.3.30.0450.02778.10
7.3.20.0190.02578.40
7.3.10.0480.02178.53
7.3.00.0410.02878.55
7.2.260.0360.03278.48
7.2.250.0380.03178.54
7.2.240.0330.02378.21
7.2.230.0350.02878.35
7.2.220.0360.02878.52
7.2.210.0340.02578.41
7.2.200.0390.02278.32
7.2.190.0390.02178.36
7.2.180.0290.03978.34
7.2.170.0370.03278.34
7.2.160.0350.03078.40
7.2.150.0420.02778.82
7.2.140.0390.02478.89
7.2.130.0470.01778.96
7.2.120.0390.02478.72
7.2.110.0410.02178.78
7.2.100.0770.02278.63
7.2.90.0380.02678.79
7.2.80.0270.01445.44
7.2.70.0240.01545.49
7.2.60.0500.01657.05
7.2.50.0230.01745.45
7.2.40.0250.01145.62
7.2.30.0300.01245.48
7.2.20.0490.02278.75
7.2.10.0480.02378.79
7.2.00.1430.02079.67
7.1.330.0250.03877.73
7.1.320.0370.03977.95
7.1.310.0260.03777.89
7.1.300.0370.03577.85
7.1.290.1790.04177.80
7.1.280.0240.04077.89
7.1.270.0190.03777.68
7.1.260.0180.04177.72
7.1.250.0480.03877.74
7.1.240.0330.05377.81
7.1.230.0550.03677.67
7.1.220.0530.03777.74
7.1.210.0390.03877.77
7.1.200.1100.02477.79
7.1.190.0590.04777.95
7.1.180.0350.03977.64
7.1.170.0590.03377.76
7.1.160.0390.06077.89
7.1.150.0570.03877.95
7.1.140.0530.03077.43
7.1.130.0420.03577.54
7.1.120.0410.04477.95
7.1.110.0330.04677.90
7.1.101.2200.04378.83
7.1.90.0490.03977.73
7.1.80.0520.03477.81
7.1.70.0340.02978.41
7.1.60.0350.02778.61
7.1.50.0360.03387.24
7.1.40.0350.03577.88
7.1.30.0300.03677.88
7.1.20.0310.05077.72
7.1.10.0310.03777.56
7.1.00.0190.05080.96
7.0.330.0660.03177.55
7.0.320.0510.03877.46
7.0.310.0200.00312.18
7.0.300.0660.04377.79
7.0.290.0590.03377.48
7.0.280.0440.03777.90
7.0.270.0560.03077.86
7.0.260.0590.03777.71
7.0.250.0630.05677.74
7.0.240.0460.04277.81
7.0.230.0230.05177.83
7.0.220.0510.03177.75
7.0.210.0300.03777.71
7.0.200.4740.03678.26
7.0.190.0430.03877.89
7.0.180.0410.02577.71
7.0.170.0410.03977.57
7.0.160.0390.02977.85
7.0.150.0100.01012.18
7.0.140.0190.07081.07
7.0.130.0480.04477.90
7.0.120.0150.00512.18
7.0.110.0640.04677.55
7.0.100.0930.05780.65
7.0.90.1240.07180.70
7.0.80.0640.07280.71
7.0.70.0940.06480.75
7.0.60.0820.05880.66
7.0.50.0810.05280.94
7.0.40.0170.04817.06
7.0.30.0170.05117.13
7.0.20.0160.05917.14
7.0.10.0220.04817.04
7.0.00.0160.04817.09
5.6.400.0370.06778.25
5.6.390.0190.00612.18
5.6.380.0220.00412.18
5.6.370.0370.07978.63
5.6.360.0510.06478.68
5.6.350.0370.09878.60
5.6.340.0590.06978.55
5.6.330.0270.00612.18
5.6.320.0260.00012.18
5.6.310.0500.07478.72
5.6.300.0530.07678.59
5.6.290.0430.07878.37
5.6.280.0330.10382.02
5.6.270.0380.08278.36
5.6.260.0420.07478.65
5.6.250.0420.09281.52
5.6.240.0270.10382.00
5.6.230.0350.08081.67
5.6.220.0460.09481.72
5.6.210.0410.08081.74
5.6.200.0470.07881.96
5.6.190.0230.10881.95
5.6.180.0370.06982.12
5.6.170.0240.08081.90
5.6.160.0380.08982.09
5.6.150.0270.08581.97
5.6.140.0340.09581.92
5.6.130.0320.08481.82
5.6.120.0370.07981.89
5.6.110.0320.07182.11
5.6.100.0340.06381.88
5.6.90.0330.07481.82
5.6.80.0160.08381.76
5.6.70.0350.07081.61
5.6.60.0300.08181.50
5.6.50.0320.10181.64
5.6.40.0260.10781.65
5.6.30.0420.09681.49
5.6.20.0320.07481.47
5.6.10.0420.06681.56
5.6.00.0360.10681.44
5.5.380.0420.10081.73
5.5.370.0200.11581.71
5.5.360.0310.10781.72
5.5.350.0280.10481.53
5.5.340.0410.07681.84
5.5.330.0280.08181.67
5.5.320.0350.07181.75
5.5.310.0280.08981.80
5.5.300.0410.07981.82
5.5.290.0430.07982.02
5.5.280.0290.08481.88
5.5.270.0360.07581.92
5.5.260.0440.07681.91
5.5.250.0360.08281.59
5.5.240.0310.06881.44
5.5.230.0370.06881.58
5.5.220.0240.08481.49
5.5.210.0350.09681.47
5.5.200.0360.10181.49
5.5.190.0340.08081.56
5.5.180.0300.07381.46
5.5.170.0630.06978.63
5.5.160.0430.10081.50
5.5.150.0340.11381.56
5.5.140.0280.09881.53
5.5.130.0360.09981.49
5.5.120.0420.10681.57
5.5.110.0480.10181.46
5.5.100.0240.11381.33
5.5.90.0330.08481.51
5.5.80.0370.09881.46
5.5.70.0370.10681.69
5.5.60.0240.09481.34
5.5.50.0480.08781.41
5.5.40.0310.10581.66
5.5.30.0330.09081.23
5.5.20.0450.09581.48
5.5.10.0270.09281.22
5.5.00.0320.09281.23
5.4.450.0340.07379.40
5.4.440.0250.08179.33
5.4.430.0340.06979.34
5.4.420.0320.07779.63
5.4.410.0280.10879.40
5.4.400.0350.07479.25
5.4.390.0290.07679.69
5.4.380.0300.09679.39
5.4.370.0290.09179.29
5.4.360.0270.11279.21
5.4.350.0380.09579.27
5.4.340.0310.08979.54
5.4.330.0270.08575.49
5.4.320.0230.10479.18
5.4.310.0370.09779.24
5.4.300.0310.09879.30
5.4.290.0400.08979.30
5.4.280.0380.09379.35
5.4.270.0380.09479.29
5.4.260.0350.07779.29
5.4.250.0230.08179.34
5.4.240.0150.09579.16
5.4.230.0390.09679.38
5.4.220.0300.11179.39
5.4.210.0480.10179.41
5.4.200.0250.07979.35
5.4.190.0310.09979.21
5.4.180.0220.10079.30
5.4.170.0420.11079.26
5.4.160.0330.09279.31
5.4.150.0370.09979.26
5.4.140.0280.10778.05
5.4.130.0420.07578.03
5.4.120.0340.09377.89
5.4.110.0500.08378.06
5.4.100.0460.08078.01
5.4.90.0360.07877.90
5.4.80.0420.07778.02
5.4.70.0400.08777.87
5.4.60.0410.08078.14
5.4.50.0300.09778.13
5.4.40.0440.09677.94
5.4.30.0400.09578.04
5.4.20.0280.10477.87
5.4.10.0430.09678.32
5.4.00.0360.09477.58
5.3.290.0100.03513.45
5.3.280.0110.03613.39
5.3.270.0090.04113.43
5.3.260.0050.04413.37
5.3.250.0120.02913.39
5.3.240.0080.04213.35
5.3.230.0090.04013.42
5.3.220.0050.02413.43
5.3.210.0050.04113.42
5.3.200.0070.03413.36
5.3.190.0140.03013.41
5.3.180.0000.02513.43
5.3.170.0070.04013.35
5.3.160.0050.04313.42
5.3.150.0080.04113.42
5.3.140.0060.03613.37
5.3.130.0100.04013.41
5.3.120.0060.03213.33
5.3.110.0040.02513.38
5.3.100.0110.03113.16
5.3.90.0040.04113.12
5.3.80.0070.03913.11
5.3.70.0090.04113.07
5.3.60.0100.04013.08
5.3.50.0120.03013.09
5.3.40.0090.03913.09
5.3.30.0080.03913.01
5.3.20.0080.03312.95
5.3.10.0110.03612.87
5.3.00.0140.02512.96
5.2.170.0030.05011.17
5.2.160.0170.02011.20
5.2.150.0070.06311.15
5.2.140.0030.05711.15
5.2.130.0000.03311.20
5.2.120.0170.05311.15
5.2.110.0130.05711.15
5.2.100.0030.06011.21
5.2.90.0100.05711.15
5.2.80.0070.03011.15
5.2.70.0070.06011.15
5.2.60.0030.03311.15
5.2.50.0070.06011.15
5.2.40.0100.06311.15
5.2.30.0030.03311.15
5.2.20.0070.06011.15
5.2.10.0100.05011.15
5.2.00.0100.05711.15
5.1.60.0070.04711.15
5.1.50.0070.05711.15
5.1.40.0070.05011.15
5.1.30.0030.05711.15
5.1.20.0100.04711.15
5.1.10.0070.05311.15
5.1.00.0100.04011.15
5.0.50.0070.04311.15
5.0.40.0030.04711.15
5.0.30.0000.07311.15
5.0.20.0000.04011.15
5.0.10.0030.02711.15
5.0.00.0000.06711.15
4.4.90.0030.01711.15
4.4.80.0030.01311.15
4.4.70.0070.02311.15
4.4.60.0100.02311.15
4.4.50.0000.03311.15
4.4.40.0000.04011.15
4.4.30.0000.03011.15
4.4.20.0030.02311.15
4.4.10.0030.02311.15
4.4.00.0000.04011.15
4.3.110.0070.03011.15
4.3.100.0030.02311.15
4.3.90.0130.01311.15
4.3.80.0000.04311.15
4.3.70.0000.03711.15
4.3.60.0070.03011.15
4.3.50.0000.03711.15
4.3.40.0030.04011.15
4.3.30.0070.03011.15
4.3.20.0000.02311.15
4.3.10.0000.04011.15
4.3.00.0000.03711.15

preferences:
33.53 ms | 401 KiB | 5 Q