3v4l.org

run code in 300+ PHP versions simultaneously
<?php function base64_encode_url($string) { return str_replace(['+','/','='], ['-','_',''], base64_encode($string)); } function base64_decode_url($string) { return base64_decode(str_replace(['-','_'], ['+','/'], $string)); } for ($i=0; $i<20000; $i++) { $data = random_bytes(rand(12,20)); if (base64_decode_url(base64_encode($data)) !== $data) { echo "FAIL"; } } echo "OK";

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.5.30.0610.01617.38
8.5.20.0580.02216.73
8.5.10.0660.02016.73
8.5.00.0480.02716.73
8.4.180.0440.02119.17
8.4.170.0550.01819.46
8.4.160.0560.02319.60
8.4.150.0580.01819.56
8.4.140.0530.02417.28
8.4.130.0550.02617.44
8.4.120.0400.01822.25
8.4.110.0480.01717.67
8.4.100.0330.01317.92
8.4.90.0340.01317.56
8.4.80.0280.01017.57
8.4.70.0310.01117.60
8.4.60.0300.01317.83
8.4.50.0370.01517.94
8.4.40.0310.01317.36
8.4.30.0400.01617.55
8.4.20.0340.01417.44
8.4.10.0360.01517.81
8.3.300.0650.01918.17
8.3.290.0660.01718.13
8.3.280.0360.01418.29
8.3.270.0590.01716.73
8.3.260.0490.01716.73
8.3.250.0250.01316.56
8.3.240.0290.01116.42
8.3.230.0280.01116.47
8.3.220.0320.01016.41
8.3.210.0330.01316.46
8.3.200.0330.01116.34
8.3.190.0310.01116.38
8.3.180.0320.01116.37
8.3.170.0310.01216.66
8.3.160.0340.01116.44
8.3.150.0340.01516.45
8.3.140.0320.01416.47
8.3.130.0350.01516.67
8.3.120.0280.01416.58
8.3.110.0300.01216.47
8.3.100.0360.01322.48
8.3.90.0380.01622.80
8.3.80.0380.01322.39
8.3.70.0360.01120.45
8.3.60.0330.01321.42
8.3.50.0320.01021.32
8.3.40.0330.01821.21
8.3.30.0300.01422.23
8.3.20.0300.01222.57
8.3.10.0270.01222.57
8.3.00.0270.01223.64
8.2.300.0750.02017.50
8.2.290.0280.01116.53
8.2.280.0270.01116.50
8.2.270.0310.01216.48
8.2.260.0310.01216.44
8.2.250.0280.01216.50
8.2.240.0310.01116.50
8.2.230.0290.01216.29
8.2.220.0270.01422.52
8.2.210.0300.01221.38
8.2.200.0310.01321.22
8.2.190.0300.01121.26
8.2.180.0280.01221.31
8.2.170.0340.01621.85
8.2.160.0350.01322.25
8.2.150.0250.01422.16
8.2.140.0290.01322.43
8.2.130.0270.01123.33
8.2.120.0290.01323.29
8.2.110.0330.01522.93
8.2.100.0310.01422.48
8.2.90.0320.01322.29
8.2.80.0270.01522.30
8.2.70.0240.01344.00
8.2.60.0260.01335.70
8.2.50.0280.01334.33
8.2.40.0250.01333.55
8.2.30.0240.01331.06
8.2.20.0230.01331.77
8.2.10.0220.01329.51
8.2.00.0240.01230.67
8.1.340.0600.02217.45
8.1.330.0290.01116.09
8.1.320.0270.01216.57
8.1.310.0310.01316.12
8.1.300.0300.01316.26
8.1.290.0300.01522.94
8.1.280.0270.01320.99
8.1.270.0290.01422.45
8.1.260.0250.01323.32
8.1.250.0290.01223.41
8.1.240.0240.01122.59
8.1.230.0250.01222.28
8.1.220.0290.01322.15
8.1.210.0280.01522.22
8.1.200.0260.01334.54
8.1.190.0270.01335.55
8.1.180.0260.01334.13
8.1.170.0260.01233.37
8.1.160.0230.01232.24
8.1.150.0230.01230.60
8.1.140.0230.01230.76
8.1.130.0220.01130.13
8.1.120.0240.01329.56
8.1.110.0230.01229.47
8.1.100.0210.01228.81
8.1.90.0230.01228.38
8.1.80.0220.01127.34
8.1.70.0200.01226.22
8.1.60.0200.01325.54
8.1.50.0220.01126.14
8.1.40.0240.01225.06
8.1.30.0240.01225.57
8.1.20.0240.01224.99
8.1.10.0250.01324.59
8.1.00.0260.01224.51
8.0.300.0340.01121.43
8.0.290.0260.01235.28
8.0.280.0230.01331.34
8.0.270.0240.01131.00
8.0.260.0270.01330.69
8.0.250.0250.01129.60
8.0.240.0250.01229.10
8.0.230.0230.01228.47
8.0.220.0230.01127.98
8.0.210.0220.01127.62
8.0.200.0230.01226.34
8.0.190.0210.01225.71
8.0.180.0220.01225.71
8.0.170.0220.01125.10
8.0.160.0220.01125.01
8.0.150.0240.01124.34
8.0.140.0250.01224.20
8.0.130.0250.01223.55
8.0.120.0270.01123.01
8.0.110.0240.01223.67
8.0.100.0250.01223.51
8.0.90.0270.01223.04
8.0.80.0260.01422.62
8.0.70.0260.01422.91
8.0.60.0260.01422.90
8.0.50.0260.01322.90
8.0.30.0280.01921.83
8.0.20.0280.02121.80
8.0.10.0280.02221.58
8.0.00.0280.02221.62
7.4.330.0230.01325.12
7.4.320.0240.01228.91
7.4.300.0200.01325.91
7.4.290.0230.01224.78
7.4.280.0250.01224.38
7.4.270.0280.01123.37
7.4.260.0250.01223.50
7.4.250.0250.01323.04
7.4.240.0250.01123.52
7.4.230.0260.01223.18
7.4.220.0260.01122.38
7.4.210.0250.01422.73
7.4.200.0260.01322.74
7.4.190.0250.01322.76
7.4.180.0250.01322.80
7.4.160.0270.01821.60
7.4.150.0270.01921.45
7.4.140.0300.02121.09
7.4.130.0290.02121.09
7.4.120.0310.02220.99
7.4.110.0320.02320.86
7.4.100.0330.02320.74
7.4.90.0340.02420.55
7.4.80.0330.02520.47
7.4.70.0340.02620.40
7.4.60.0340.02620.26
7.4.50.0340.02620.14
7.4.40.0330.02620.05
7.4.30.0350.02719.99
7.4.20.0340.02819.76
7.4.10.0350.02719.72
7.4.00.0340.02819.70
7.3.330.0260.01123.55
7.3.320.0250.01223.56
7.3.310.0270.01223.33
7.3.300.0270.01223.17
7.3.290.0270.01422.60
7.3.280.0280.01821.64
7.3.270.0290.02021.40
7.3.260.0300.02221.11
7.3.250.0290.02321.02
7.3.240.0320.02120.94
7.3.230.0320.02320.83
7.3.220.0320.02420.59
7.3.210.0340.02420.44
7.3.200.0350.02520.35
7.3.190.0350.02620.30
7.3.180.0350.02620.21
7.3.170.0350.02620.06
7.3.160.0360.02620.01
7.3.150.0360.02819.91
7.3.140.0360.02719.76
7.3.130.0370.02719.65
7.3.120.0360.02819.58
7.3.110.0360.03019.45
7.3.100.0370.03019.23
7.3.90.0370.03219.17
7.3.80.0370.03118.97
7.3.70.0360.03218.95
7.3.60.0370.03318.98
7.3.50.0360.03118.96
7.3.40.0360.03218.96
7.3.30.0360.03018.98
7.3.20.0380.03119.45
7.3.10.0380.03019.37
7.3.00.0380.03219.36
7.2.340.0340.02520.87
7.2.330.0370.02620.59
7.2.320.0360.02620.51
7.2.310.0370.02820.34
7.2.300.0360.02720.34
7.2.290.0380.03020.15
7.2.280.0370.03020.04
7.2.270.0370.03119.88
7.2.260.0370.03119.80
7.2.250.0370.03319.77
7.2.240.0380.03219.62
7.2.230.0380.03319.41
7.2.220.0380.03419.20
7.2.210.0370.03419.10
7.2.200.0390.03319.14
7.2.190.0370.03319.08
7.2.180.0370.03219.07
7.2.170.0380.03319.10
7.2.160.0370.03319.10
7.2.150.0390.03419.60
7.2.140.0390.03219.60
7.2.130.0390.03319.62
7.2.120.0400.03319.62
7.2.110.0400.03419.59
7.2.100.0440.03319.57
7.2.90.0430.03319.50
7.2.80.0420.03319.50
7.2.70.0430.03319.51
7.2.60.0420.03119.51
7.2.50.0420.03219.50
7.2.40.0430.03319.53
7.2.30.0430.03319.53
7.2.20.0420.03319.57
7.2.10.0420.03419.57
7.2.00.0420.03419.56
7.1.330.0400.03619.29
7.1.320.0410.03818.83
7.1.310.0400.03918.75
7.1.300.0400.03818.68
7.1.290.0400.03818.68
7.1.280.0390.03918.66
7.1.270.0400.03818.68
7.1.260.0400.03918.66
7.1.250.0400.04018.61
7.1.240.0400.03918.58
7.1.230.0400.03918.60
7.1.220.0420.03918.57
7.1.210.0450.03718.54
7.1.200.0440.03918.54
7.1.190.0440.03718.56
7.1.180.0430.03818.53
7.1.170.0440.03818.53
7.1.160.0430.03818.53
7.1.150.0440.03718.53
7.1.140.0440.03918.54
7.1.130.0440.03918.53
7.1.120.0450.03818.53
7.1.110.0440.03918.56
7.1.100.0440.03718.55
7.1.90.0430.03918.56
7.1.80.0410.04018.58
7.1.70.0430.03818.52
7.1.60.0420.03818.82
7.1.50.0430.03818.81
7.1.40.0410.03918.83
7.1.30.0420.03818.82
7.1.20.0420.03818.81
7.1.10.0440.03818.56
7.1.00.0420.03618.53
7.0.330.0400.04018.24
7.0.320.0390.04218.84
7.0.310.0420.04018.75
7.0.300.0440.04118.74
7.0.290.0430.04118.76
7.0.280.0430.04118.75
7.0.270.0410.04318.78
7.0.260.0440.04018.77
7.0.250.0420.04218.90
7.0.240.0410.04118.91
7.0.230.0400.04018.90
7.0.220.0420.04118.86
7.0.210.0420.04018.87
7.0.200.0410.04218.86
7.0.190.0400.04218.88
7.0.180.0390.04218.88
7.0.170.0400.04118.91
7.0.160.0390.04018.85
7.0.150.0430.04118.85
7.0.140.0430.04118.86
7.0.130.0420.04118.86
7.0.120.0440.04018.88
7.0.110.0430.04218.86
7.0.100.0420.04218.85
7.0.90.0420.04118.81
7.0.80.0410.04218.81
7.0.70.0420.04118.81
7.0.60.0430.04318.84
7.0.50.0420.04218.77
7.0.40.0430.04218.83
7.0.30.0430.04218.81
7.0.20.0420.04018.78
7.0.10.0420.04218.87
7.0.00.0420.04218.77
5.6.400.0130.00818.32
5.6.390.0140.00818.43
5.6.380.0130.00918.38
5.6.370.0140.00818.85
5.6.360.0140.00818.84
5.6.350.0130.00818.82
5.6.340.0140.00818.86
5.6.330.0140.00818.85
5.6.320.0140.00818.85
5.6.310.0130.00818.86
5.6.300.0140.00818.74
5.6.290.0140.00818.82
5.6.280.0130.00818.83
5.6.270.0130.00818.96
5.6.260.0130.00818.85
5.6.250.0130.00818.85
5.6.240.0130.00818.86
5.6.230.0130.00918.87
5.6.220.0140.00718.90
5.6.210.0140.00818.90
5.6.200.0140.00818.93
5.6.190.0140.00818.94
5.6.180.0140.00718.91
5.6.170.0140.00718.88
5.6.160.0140.00818.91
5.6.150.0140.00818.91
5.6.140.0140.00818.88
5.6.130.0140.00718.89
5.6.120.0130.00818.88
5.6.110.0140.00818.85
5.6.100.0140.00718.83
5.6.90.0130.00818.85
5.6.80.0130.00818.81
5.6.70.0130.00818.84
5.6.60.0130.00818.84
5.6.50.0130.00818.75
5.6.40.0130.00818.85
5.6.30.0130.00818.84
5.6.20.0130.00818.81
5.6.10.0130.00818.79
5.6.00.0120.00719.12

preferences:
34.78 ms | 475 KiB | 5 Q