3v4l.org

run code in 300+ PHP versions simultaneously
<?php echo "Only strings: ", ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test','this is a test','this is a test','this is a test','this is a test','this is a test'; $time1 = microtime(1); ob_end_clean(); echo "comma=", round($c=($time1-$time0)*1000, 3), "ms"; ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test'.'this is a test'.'this is a test'.'this is a test'.'this is a test'.'this is a test'; $time1 = microtime(1); ob_end_clean(); echo ", dot=", round($d=($time1-$time0)*1000, 3), "ms"; echo ' > delta= ', round(($d - $c) * 100 / $d, 1), "%"; echo "\n"; echo "With vars: ", ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test',$i,'this is a test',$i,'this is a test',$i; $time1 = microtime(1); ob_end_clean(); echo "comma=", round($c=($time1-$time0)*1000, 3), "ms"; ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test'.$i.'this is a test'.$i.'this is a test'.$i; $time1 = microtime(1); ob_end_clean(); echo ", dot=", round($d=($time1-$time0)*1000, 3), "ms"; echo ' > delta= ', round(($d - $c) * 100 / $d, 1), "%"; echo "\n"; echo "With array: "; $A = array('a' => 'A', 'b' => 'B', 'c' => 'C'); ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test',$A['a'],'this is a test',$A['b'],'this is a test',$A['c']; $time1 = microtime(1); ob_end_clean(); echo "comma=", round($c=($time1-$time0)*1000, 3), "ms"; ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test'.$A['a'].'this is a test'.$A['b'].'this is a test'.$A['c']; $time1 = microtime(1); ob_end_clean(); echo ", dot=", round($d=($time1-$time0)*1000, 3), "ms"; echo ' > delta= ', round(($d - $c) * 100 / $d, 1), "%"; echo "\n"; echo "With array & function: "; $A = array('a' => 'A', 'b' => 'B', 'c' => 'C'); ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test',ss($A['a']),'this is a test',ss($A['b']),'this is a test',ss($A['c']); $time1 = microtime(1); ob_end_clean(); echo "comma=", round($c=($time1-$time0)*1000, 3), "ms"; ob_start(); $i = 0; $time0 = microtime(1); while($i++ < 100000) echo'this is a test'.ss($A['a']).'this is a test'.ss($A['b']).'this is a test'.ss($A['c']); $time1 = microtime(1); ob_end_clean(); echo ", dot=", round($d=($time1-$time0)*1000, 3), "ms"; echo ' > delta= ', round(($d - $c) * 100 / $d, 1), "%"; function ss($s) { return substr($s, 0); }

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.0100.15133.43
7.1.70.0200.15831.18
7.1.60.0300.20731.38
7.1.50.0270.18630.87
7.1.00.0170.40336.42
7.0.200.1000.15030.77
7.0.140.0200.28035.95
7.0.110.1330.25035.28
7.0.100.0330.28035.30
7.0.90.0600.26335.48
7.0.80.0500.16735.48
7.0.70.0470.21035.32
7.0.60.0370.17735.25
7.0.50.0430.19035.29
7.0.40.0170.21331.58
7.0.30.0230.17731.64
7.0.20.0330.23731.80
7.0.10.0230.21731.62
7.0.00.0430.23731.74
5.6.280.0100.41030.08
5.6.260.0100.38728.88
5.6.250.0070.39028.89
5.6.240.0170.39329.14
5.6.230.0030.38328.96
5.6.220.0170.37028.83
5.6.210.0130.27028.99
5.6.200.0000.28328.84
5.6.190.0070.31328.83
5.6.180.0100.27328.97
5.6.170.0130.30728.90
5.6.160.0100.30028.93
5.6.150.0100.39028.90
5.6.140.0130.40028.86
5.6.130.0070.33328.89
5.6.120.0500.387160.45
5.6.110.0200.36728.96
5.6.100.0170.41028.84
5.6.90.0130.29728.92
5.6.80.0070.37728.30
5.6.70.0170.30328.27
5.6.60.0100.37728.30
5.6.50.0170.36028.32
5.6.40.0070.40028.25
5.6.30.0100.33728.21
5.6.20.0200.34728.25
5.6.10.0130.32728.33
5.6.00.0070.34728.21
5.5.380.0530.28325.91
5.5.370.0100.31325.84
5.5.360.0070.33725.82
5.5.350.0030.28025.92
5.5.340.0030.33326.18
5.5.330.0130.30326.38
5.5.320.0070.31326.39
5.5.310.0170.40026.18
5.5.300.0070.38726.18
5.5.290.0070.32326.16
5.5.280.0100.36726.34
5.5.270.0100.36026.17
5.5.260.0200.38726.18
5.5.250.0170.37026.20
5.5.240.0100.31025.77
5.5.230.0070.38325.57
5.5.220.0100.32025.67
5.5.210.0070.35725.68
5.5.200.0230.37325.76
5.5.190.0100.35025.68
5.5.180.0100.36325.55
5.5.160.0070.35325.68
5.5.150.0030.32725.77
5.5.140.0130.38325.64
5.5.130.0070.40025.71
5.5.120.0130.37325.52
5.5.110.0170.36725.72
5.5.100.0030.33325.43
5.5.90.0170.36725.63
5.5.80.0230.36725.42
5.5.70.0100.37725.64
5.5.60.0130.39025.43
5.5.50.0370.34325.61
5.5.40.0130.37725.65
5.5.30.0170.42025.42
5.5.20.0170.38325.66
5.5.10.0300.34725.33
5.5.00.0270.39325.40
5.4.450.0130.37727.75
5.4.440.0200.31027.49
5.4.430.0070.41027.49
5.4.420.0100.31027.52
5.4.410.0130.37727.45
5.4.400.0100.27027.26
5.4.390.0030.27027.34
5.4.380.0270.34327.51
5.4.370.0070.29327.22
5.4.360.0030.36727.13
5.4.350.0170.32727.22
5.4.340.0130.30727.23
5.4.320.0100.40027.20
5.4.310.0130.35327.25
5.4.300.0170.36727.21
5.4.290.0270.35727.25
5.4.280.0170.38027.21
5.4.270.0170.36327.12
5.4.260.0100.36027.17
5.4.250.0100.33027.50
5.4.240.0070.33027.19
5.4.230.0130.37727.21
5.4.220.0300.37727.22
5.4.210.0200.36327.24
5.4.200.0270.36327.22
5.4.190.0130.37727.19
5.4.180.0370.36727.21
5.4.170.0030.37027.27
5.4.160.0200.37027.49
5.4.150.0130.38327.29
5.4.140.0170.36324.64
5.4.130.0130.36724.61
5.4.120.0130.36024.61
5.4.110.0170.36324.69
5.4.100.0100.35024.72
5.4.90.0200.35724.61
5.4.80.0100.40324.77
5.4.70.0070.37724.68
5.4.60.0200.31724.67
5.4.50.0130.36724.54
5.4.40.0070.37724.68
5.4.30.0070.37324.81
5.4.20.0100.38024.50
5.4.10.0130.36324.73
5.4.00.0130.37324.04
5.3.290.0170.35322.86
5.3.280.0130.38322.96
5.3.270.0070.38722.76
5.3.260.0130.36022.89
5.3.250.0100.25722.75
5.3.240.0070.37722.76
5.3.230.0070.39722.73
5.3.220.0030.34322.68
5.3.210.0030.31322.80
5.3.200.0200.36022.85
5.3.190.0030.38722.86
5.3.180.0030.37022.78
5.3.170.0270.35022.76
5.3.160.0230.36022.72
5.3.150.0130.37022.66
5.3.140.0070.32022.82
5.3.130.0200.37022.70
5.3.120.0030.38022.83
5.3.110.0130.36322.85
5.3.100.0070.39722.25
5.3.90.0070.39322.14
5.3.80.0170.37022.22
5.3.70.0030.33722.16
5.3.60.0600.493153.63
5.3.50.0100.31721.94
5.3.40.0130.25722.12
5.3.30.0070.26322.09
5.3.20.0500.303153.22
5.3.10.0070.31321.88
5.3.00.0100.28321.73
5.2.170.0030.33319.43
5.2.160.0030.29019.45
5.2.150.0070.35019.38
5.2.140.0070.29319.51
5.2.130.0370.30319.44
5.2.120.0100.28319.33
5.2.110.0070.29319.49
5.2.100.0400.330151.09
5.2.90.0030.32319.47
5.2.80.0100.28019.47
5.2.70.0070.29019.47
5.2.60.0030.29719.55
5.2.50.0000.38019.46
5.2.40.0070.31719.36
5.2.30.0130.37019.37
5.2.20.0400.437151.18
5.2.10.0100.41319.31
5.2.00.0100.42319.11
5.1.60.0000.45017.95
5.1.50.0130.41318.00
5.1.40.0070.40717.81
5.1.30.0000.35718.29
5.1.20.0030.40718.67
5.1.10.0000.40018.09
5.1.00.0200.40718.20
5.0.50.0130.50716.60
5.0.40.0200.63016.27
5.0.30.0130.54016.20
5.0.20.0070.54716.18
5.0.10.0030.49716.14
5.0.00.0200.57016.10
4.4.90.0070.44714.06
4.4.80.0030.40313.92
4.4.70.0100.55714.04
4.4.60.0030.54313.91
4.4.50.0070.52314.07
4.4.40.0070.55013.91
4.4.30.0070.45713.91
4.4.20.0130.46014.09
4.4.10.0070.55314.11
4.4.00.0170.56014.03
4.3.110.0070.54313.99
4.3.100.0170.62713.92
4.3.90.0130.50713.83
4.3.80.0070.61313.83
4.3.70.0100.51713.84
4.3.60.0170.53313.93
4.3.50.0000.47013.86
4.3.40.0130.54313.94
4.3.30.0100.51312.60
4.3.20.0130.52312.56
4.3.10.0030.51712.55
4.3.00.0070.48012.52

preferences:
39.52 ms | 401 KiB | 5 Q