3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = array(); $l = 100000; for($i = 0; $i< $l; $i++) { $array[$i] = md5($i); } $copy = $array; $start = microtime(true); for($i = 0; $i< $l; $i++) { $copy[$i] = $copy[$i] . ' x'; } echo "\nfor:" . (microtime(true) - $start); $copy = $array; $start = microtime(true); foreach ($copy as $i => $item) { $copy[$i] = $item . ' x'; } echo "\nforeach (ohne ref):" . (microtime(true) - $start); $copy = $array; $start = microtime(true); foreach ($copy as &$item) { $item .= ' x'; } echo "\nforeach (mit ref):" . (microtime(true) - $start); $copy = $array; $start = microtime(true); array_walk($copy, function (&$item, $i) { $item .= ' x'; }); echo "\narray_walk (mit ref):" . (microtime(true) - $start); $copy = $array; $start = microtime(true); $copy = array_map(function ($item) { return $item . ' x'; }, $copy); echo "\narray_map (ohne ref):" . (microtime(true) - $start);

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.4.10.0330.07235.97
7.4.00.0230.12835.88
7.3.130.0270.12635.03
7.3.120.0410.09835.06
7.3.110.0240.11635.32
7.3.100.0230.09735.19
7.3.90.0170.10135.28
7.3.80.0250.09735.17
7.3.70.0280.09135.25
7.3.60.0200.09935.16
7.3.50.0270.09634.97
7.3.40.0270.08635.25
7.3.30.0150.10035.03
7.3.20.1950.09438.70
7.3.10.0120.09038.40
7.3.00.0150.08538.63
7.2.260.0400.11735.63
7.2.250.0260.13535.33
7.2.240.0180.10835.44
7.2.230.0220.11535.43
7.2.220.0290.10135.45
7.2.210.0220.10435.59
7.2.200.0200.10735.33
7.2.190.0220.11535.49
7.2.180.0280.09135.45
7.2.170.0230.09935.56
7.2.160.0200.12535.43
7.2.150.1460.10138.62
7.2.140.0080.10638.83
7.2.130.0130.10138.58
7.2.120.0110.10438.74
7.2.110.0130.10138.83
7.2.100.0100.10538.80
7.2.90.0070.10438.84
7.2.80.0080.10738.78
7.2.70.0200.11838.88
7.2.60.0120.10938.82
7.2.50.0050.09138.64
7.2.40.0070.10438.82
7.2.30.0100.10138.91
7.2.20.0970.08738.79
7.2.10.0120.09338.71
7.2.00.0120.08839.67
7.1.330.0720.14237.89
7.1.320.0100.12537.80
7.1.310.0130.12937.79
7.1.300.0050.13837.80
7.1.290.0050.12937.74
7.1.280.0050.13537.79
7.1.270.2090.12837.72
7.1.260.0100.13237.47
7.1.250.0180.12437.83
7.1.240.0230.12237.81
7.1.230.0070.11237.72
7.1.220.0100.11837.92
7.1.210.0200.10837.82
7.1.200.0100.10537.76
7.1.190.0130.12837.50
7.1.180.2240.10537.84
7.1.170.0070.13237.93
7.1.160.0130.12237.86
7.1.150.0230.12437.54
7.1.140.0210.14237.76
7.1.130.0250.10737.91
7.1.120.0180.11737.90
7.1.110.0280.10937.81
7.1.100.0260.12437.77
7.1.90.0170.11337.60
7.1.80.0200.11037.75
7.1.70.0240.09638.44
7.1.60.0270.07738.44
7.1.50.0290.11938.44
7.1.40.0270.10937.88
7.1.30.0190.11337.80
7.1.20.0200.12337.59
7.1.10.0170.12437.80
7.1.00.0100.14540.87
7.0.330.0200.15237.48
7.0.320.0000.11237.19
7.0.310.0030.14137.29
7.0.300.0100.10437.09
7.0.290.0140.11637.36
7.0.280.0170.15037.13
7.0.270.0200.11937.31
7.0.260.0130.12437.31
7.0.250.0410.11837.49
7.0.240.0190.11237.56
7.0.230.0070.12737.51
7.0.220.0200.11437.56
7.0.210.0140.12137.36
7.0.200.0070.10938.05
7.0.190.0270.11237.41
7.0.180.0220.10537.59
7.0.170.0140.11337.63
7.0.160.0270.11037.29
7.0.150.0290.10537.34
7.0.140.0150.13740.70
7.0.130.0170.11537.62
7.0.120.0200.11137.57
7.0.110.0170.12837.36
7.0.100.0230.12738.77
7.0.90.3030.12939.10
7.0.80.2640.13238.88
7.0.70.2780.12838.94
7.0.60.2850.13538.90
7.0.50.2620.12339.12
7.0.40.0620.11323.84
7.0.30.1110.13223.71
7.0.20.0670.11023.73
7.0.10.0630.10823.64
7.0.00.0650.10223.73
5.6.400.0600.32062.93
5.6.390.0430.26963.02
5.6.380.0530.31062.86
5.6.370.0330.32363.06
5.6.360.0560.24863.44
5.6.350.0460.28062.55
5.6.340.0470.32363.04
5.6.330.0480.28163.03
5.6.320.0560.27362.90
5.6.310.0610.26663.16
5.6.300.0500.27963.18
5.6.290.0720.29063.30
5.6.280.0400.27966.15
5.6.270.0570.30463.30
5.6.260.0490.26262.90
5.6.250.0350.28566.03
5.6.240.0450.27866.19
5.6.230.0380.28366.19
5.6.220.0350.26966.13
5.6.210.0350.27365.90
5.6.200.0410.30166.35
5.6.190.0470.25966.40
5.6.180.0540.25466.25
5.6.170.0430.26666.43
5.6.160.0430.23966.23
5.6.150.0620.21566.33
5.6.140.0480.24466.46
5.6.130.0380.26466.26
5.6.120.0610.26266.23
5.6.110.0330.27466.33
5.6.100.0350.28566.23
5.6.90.0550.28766.24
5.6.80.0500.27965.84
5.6.70.0470.26665.89
5.6.60.0360.29066.00
5.6.50.0450.27965.98
5.6.40.0400.26865.89
5.6.30.0440.26365.94
5.6.20.0370.26265.81
5.6.10.0450.30765.94
5.6.00.0310.29466.11
5.5.380.0430.30566.01
5.5.370.0440.26765.94
5.5.360.0430.27266.09
5.5.350.0430.27566.06
5.5.340.0480.26166.07
5.5.330.0370.26266.18
5.5.320.0450.25166.18
5.5.310.0450.24066.14
5.5.300.0500.26766.15
5.5.290.0340.26166.21
5.5.280.0470.28266.20
5.5.270.0460.26666.07
5.5.260.0450.28866.19
5.5.250.0490.27066.08
5.5.240.0470.26865.85
5.5.230.0300.28265.70
5.5.220.0200.25465.96
5.5.210.0420.27465.69
5.5.200.0370.26865.96
5.5.190.0490.29265.86
5.5.180.0450.26765.79
5.5.170.0570.26363.05
5.5.160.0490.29765.95
5.5.150.0600.26965.95
5.5.140.0400.30165.71
5.5.130.0380.30265.72
5.5.120.0540.25365.85
5.5.110.0660.28965.94
5.5.100.0520.28165.71
5.5.90.0550.26965.83
5.5.80.0310.29665.86
5.5.70.0400.26765.93
5.5.60.0500.27265.84
5.5.50.0390.26765.81
5.5.40.0240.29665.64
5.5.30.0520.27165.78
5.5.20.0530.29565.73
5.5.10.0440.27265.82
5.5.00.0570.31565.64
5.4.450.0420.24163.84
5.4.440.0410.25863.77
5.4.430.0350.28463.70
5.4.420.0470.26763.72
5.4.410.0530.26663.82
5.4.400.0400.27763.62
5.4.390.0310.27663.60
5.4.380.0350.27663.73
5.4.370.0310.25663.58
5.4.360.0480.26263.76
5.4.350.0390.26663.54
5.4.340.0350.27563.67
5.4.330.0430.26659.58
5.4.320.0480.27863.74
5.4.310.0390.27563.74
5.4.300.0430.26563.58
5.4.290.0370.26863.65
5.4.280.0490.24763.57
5.4.270.0400.25363.76
5.4.260.0430.25963.60
5.4.250.0400.27563.55
5.4.240.0470.28963.56
5.4.230.0280.29463.58
5.4.220.0420.26663.69
5.4.210.0400.26963.58
5.4.200.0510.25863.77
5.4.190.0420.28563.67
5.4.180.0300.27563.52
5.4.170.0560.29963.55
5.4.160.0490.27963.66
5.4.150.0430.27463.50
5.4.140.0430.28762.47
5.4.130.0430.28862.33
5.4.120.0350.29362.37
5.4.110.0380.26562.31
5.4.100.0550.28562.29
5.4.90.0430.28762.30
5.4.80.0320.27662.25
5.4.70.0320.30962.34
5.4.60.0460.29962.30
5.4.50.0480.27962.34
5.4.40.0550.23462.38
5.4.30.0490.26262.35
5.4.20.0320.27762.34
5.4.10.0250.29162.21
5.4.00.0430.25862.13
5.3.290.0250.29260.89
5.3.280.0300.29160.92
5.3.270.0280.29560.87
5.3.260.0240.32860.84
5.3.250.0270.29760.82
5.3.240.0350.27460.75
5.3.230.0280.30760.81
5.3.220.0280.32860.87
5.3.210.0260.30360.85
5.3.200.0250.30360.86
5.3.190.0360.30160.82
5.3.180.0280.28060.86
5.3.170.0250.31160.89
5.3.160.0280.32260.97
5.3.150.0280.31461.04
5.3.140.0400.29660.97
5.3.130.0150.29460.91
5.3.120.0270.30760.93
5.3.110.0380.31060.94
5.3.100.0300.30660.67
5.3.90.0270.32160.63
5.3.80.0320.32460.38
5.3.70.0260.29260.48
5.3.60.0100.31660.45
5.3.50.0250.29360.45
5.3.40.0200.30960.49
5.3.30.0180.30260.55
5.3.20.0150.30360.35
5.3.10.0250.29360.24
5.3.00.0180.28860.02
5.2.170.0030.06714.19
5.2.160.0100.06014.19
5.2.150.0030.04314.19
5.2.140.0030.06314.19
5.2.130.0100.04014.19
5.2.120.0000.06714.19
5.2.110.0130.05314.19
5.2.100.0070.06014.19
5.2.90.0030.06314.19
5.2.80.0070.06014.19
5.2.70.0130.05714.19
5.2.60.0100.06014.19
5.2.50.0100.04714.19
5.2.40.0030.06314.19
5.2.30.0130.05314.19
5.2.20.0000.06314.19
5.2.10.0100.03714.19
5.2.00.0030.06314.19
5.1.60.0000.05314.19
5.1.50.0000.06014.19
5.1.40.0030.03714.19
5.1.30.0030.04314.19
5.1.20.0130.05014.19
5.1.10.0000.05714.19
5.1.00.0070.05314.19
5.0.50.0030.04714.19
5.0.40.0030.03714.19
5.0.30.0030.03314.19
5.0.20.0070.04014.19
5.0.10.0030.04314.19
5.0.00.0030.06714.19
4.4.90.0030.03014.19
4.4.80.0100.02714.19
4.4.70.0030.03714.19
4.4.60.0030.03714.19
4.4.50.0000.03714.19
4.4.40.0070.03714.19
4.4.30.0030.03714.19
4.4.20.0000.04014.19
4.4.10.0030.03014.19
4.4.00.0030.05014.19
4.3.110.0100.03014.19
4.3.100.0030.03314.19
4.3.90.0000.03014.19
4.3.80.0030.05314.19
4.3.70.0030.03714.19
4.3.60.0000.02714.19
4.3.50.0070.03314.19
4.3.40.0100.04714.19
4.3.30.0030.02714.19
4.3.20.0000.03714.19
4.3.10.0030.03314.19
4.3.00.0070.03314.19

preferences:
37.01 ms | 401 KiB | 5 Q