3v4l.org

run code in 300+ PHP versions simultaneously
<?php function decode_char2($c) { $a1 = array("0", "1", "2", "3", "4", "5", "6", "7", "9", "H", "M", "D", "X", "V", "J", "Q", "U", "G", "E", "T", "N", "o", "v", "y", "w", "k"); $a2 = array("c", "I", "W", "m", "8", "L", "l", "g", "R", "B", "a", "u", "s", "p", "z", "Z", "e", "d", "=", "x", "Y", "t", "n", "f", "b", "i"); $result = $c; for($j = 0; $j < count($a1); $j++) { if ($c == $a1[$j][0]) { $result = $a2[$j][0]; break; } if ($c == $a2[$j][0]) { $result = $a1[$j][0]; break; } } return $result; } function reverse($s, $direct) { if ($direct == 'd') { $nlen = strlen($s)-3; $r = ''; while ($nlen > 2) { $r .= substr($s,$nlen,1); $nlen--; } $nlen = strlen($r); $nlen2 = intval(substr($s,1,1).substr($s,0,1)); $nlen2 = $nlen2 / 2; if ($nlen2 < $nlen) { $npos = $nlen2; while ($npos < $nlen) { $r = substr($r,0, $npos) . substr($r,$npos + 1); $npos += $nlen2; } } } else { $nlen = strlen($s); $delta = 7; if (($nlen % $delta) == 0) $delta = 8; $s0 = $s; $s7 = substr($s0,0,$delta); $s0 = substr($s0,$delta); $s = ''; while ((strlen($s7) == $delta) && (strlen($s0) > 0)) { $s .= $s7 . 'd'; $s7 = substr($s0,0,$delta); $s0 = substr($s0,$delta); } $s .= $s7; $nlen = strlen($s)-1; $r = ''; while ($nlen >= 0) { $r .= substr($s,$nlen,1); $nlen--; } $delta2 = $delta + $delta; $sdelta2 = "$delta2"; $sdelta4 = substr($sdelta2,1,1) . substr($sdelta2,0,1); $r = $sdelta4 . 'A' . $r . 'rs'; } return($r); } function decode_str2($s) { $s = reverse($s,"d"); $result = ''; for($i = 0; $i < strlen($s); $i++) { $result .= decode_char2($s[$i]); } $result = base64_decode($result); return $result; } function encode_str2($s) { $s = base64_encode($s); $result = ''; for($i = 0; $i < strlen($s); $i++) { $result .= decode_char2($s[$i]); } $result = reverse($result,"e"); return $result; } echo decode_str2('2iob3gRLvaUMkjEMtgtMGazcGNm=2xmLkasB05wbvaE1yaY1Ujwjtgo4UxElyjh4UjAzygujUQhZy1tVUanmvc9htQ3N0QnLk5480ftL2iENvc7L0iw12dMhvQnVtQYBk5Wa');

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.0032.00018.30
8.3.50.0101.99321.99
8.3.40.0101.99218.59
8.3.30.0131.98919.06
8.3.20.0002.00220.39
8.3.10.0002.00223.64
8.3.00.0031.99919.24
8.2.180.0071.99818.05
8.2.170.0101.99322.96
8.2.160.0031.99922.13
8.2.150.0071.99724.18
8.2.140.0002.00324.66
8.2.130.0031.99826.16
8.2.120.0071.99721.00
8.2.110.0101.99419.10
8.2.100.0171.97717.72
8.2.90.0032.00217.88
8.2.80.0002.00418.73
8.2.70.0031.99918.04
8.2.60.0002.00318.22
8.2.50.0071.99618.10
8.2.40.0031.99921.20
8.2.30.0002.00419.25
8.2.20.0002.00117.91
8.2.10.0032.00118.13
8.2.00.0071.99617.93
8.1.280.0071.99725.92
8.1.270.0031.99919.05
8.1.260.0031.99826.35
8.1.250.0071.99428.09
8.1.240.0032.00017.48
8.1.230.0101.99517.83
8.1.220.0002.00317.79
8.1.210.0031.99918.77
8.1.200.0032.00217.35
8.1.190.0031.99917.35
8.1.180.0031.99918.10
8.1.170.0002.00218.50
8.1.160.0002.00419.14
8.1.150.0031.99918.96
8.1.140.0002.00217.48
8.1.130.0032.00017.85
8.1.120.0031.99817.57
8.1.110.0002.00317.45
8.1.100.0031.99917.57
8.1.90.0032.00317.57
8.1.80.0032.00017.46
8.1.70.0031.99817.53
8.1.60.0071.99717.69
8.1.50.0031.99917.56
8.1.40.0071.99517.68
8.1.30.0002.00417.75
8.1.20.0002.00317.69
8.1.10.0002.00317.48
8.1.00.0002.00217.57
8.0.300.0071.99518.77
8.0.290.0032.00016.75
8.0.280.0002.00218.50
8.0.270.0071.99617.22
8.0.260.0031.99917.30
8.0.250.0031.99916.93
8.0.240.0032.00016.84
8.0.230.0031.99916.79
8.0.220.0002.00316.88
8.0.210.0002.00216.84
8.0.200.0031.99716.88
8.0.190.0002.00216.85
8.0.180.0101.99216.90
8.0.170.0071.99516.87
8.0.160.0032.00016.95
8.0.150.0131.98816.88
8.0.140.0071.99616.73
8.0.130.0031.99813.41
8.0.120.0032.00016.89
8.0.110.0031.99916.72
8.0.100.0071.99516.79
8.0.90.0002.00216.87
8.0.80.0161.98716.80
8.0.70.0002.00216.76
8.0.60.0071.99716.80
8.0.50.0002.00216.86
8.0.30.0171.97717.05
8.0.20.0111.98617.40
8.0.10.0071.99616.81
8.0.00.0101.99416.79
7.4.330.0031.99615.03
7.4.320.0031.99916.52
7.4.300.0071.99416.49
7.4.290.0071.99616.50
7.4.280.0071.99116.57
7.4.270.0071.99616.41
7.4.260.0131.98516.45
7.4.250.0002.00216.47
7.4.240.0032.00016.46
7.4.230.0071.99616.32
7.4.220.0061.99216.60
7.4.210.0071.99516.53
7.4.200.0031.99916.52
7.4.160.0161.98916.35
7.4.150.0341.68617.40
7.4.140.0051.99417.86
7.4.130.0261.98516.41
7.4.120.0141.99216.63
7.4.110.0162.42216.40
7.4.100.0062.46716.36
7.4.90.0132.45416.45
7.4.80.0162.43919.39
7.4.70.0162.45016.40
7.4.60.0132.47316.48
7.4.50.0002.49916.30
7.4.40.0262.31916.64
7.4.30.0202.44416.37
7.4.00.0032.49114.96
7.3.330.0261.97213.48
7.3.320.0031.99913.43
7.3.310.0032.00116.17
7.3.300.0002.00516.36
7.3.290.0111.99016.36
7.3.280.0141.99116.32
7.3.270.0032.00317.40
7.3.260.0201.98516.41
7.3.250.0081.99616.22
7.3.240.0131.97616.34
7.3.230.0132.43016.54
7.3.210.0102.46416.57
7.3.200.0102.44019.39
7.3.190.0162.44516.32
7.3.180.0162.46616.25
7.3.170.0102.42316.53
7.3.160.0132.46616.58
7.2.330.0592.24516.59
7.2.320.0132.45616.73
7.2.310.0162.42916.50
7.2.300.0132.44816.76
7.2.290.0132.46116.64
7.2.00.0032.49818.86
7.1.100.0102.49117.85
7.1.70.0072.49416.77
7.1.60.0072.49417.47
7.1.50.2072.29217.20
7.1.00.0002.50022.23
7.0.200.0002.50116.74
7.0.140.0002.50022.06
7.0.60.0302.45019.98
7.0.50.0072.47717.81
7.0.40.0072.49319.96
7.0.30.0432.45719.84
7.0.20.0302.47019.78
7.0.10.0202.48019.94
7.0.00.0072.49319.80
5.6.280.0102.49021.12
5.6.210.0132.46720.72
5.6.200.0172.46718.06
5.6.190.0072.47720.49
5.6.180.0272.47320.41
5.6.170.0202.48020.29
5.6.160.0132.48720.33
5.6.150.0102.49018.20
5.6.140.0072.49318.20
5.6.130.0032.48018.21
5.6.120.0102.44721.15
5.6.110.0002.50020.92
5.6.100.0072.49321.11
5.6.90.0132.38720.98
5.6.80.0032.49720.40
5.5.350.4272.05720.41
5.5.340.0102.47717.98
5.5.330.0072.49320.23
5.5.320.0402.46020.19
5.5.310.0302.47020.21
5.5.300.0002.50018.05
5.5.290.0002.48017.82
5.5.280.0102.48320.78
5.5.270.0072.49320.79
5.5.260.0072.49320.89
5.5.250.0072.49320.62
5.5.240.0132.48720.21
5.4.450.0202.47719.38
5.4.440.0202.47319.29
5.4.430.2932.20319.38
5.4.420.0272.47019.14
5.4.410.0102.48719.38
5.4.400.0272.47019.29
5.4.390.0602.41018.52
5.4.380.0632.43318.50
5.4.370.0602.40718.50
5.4.360.0732.42018.77
5.4.350.0672.43018.75
5.4.340.0502.44718.52
5.4.320.0602.39018.61
5.4.310.0832.33718.71
5.4.300.0572.43718.77
5.4.290.0702.42718.58
5.4.280.0732.22718.61
5.4.270.0672.40018.72
5.4.260.0532.43718.51
5.4.250.0672.43018.75
5.4.240.0802.41718.78
5.4.230.0731.75018.71
5.4.220.0471.56318.76
5.4.210.0371.63318.72
5.4.200.0571.48716.66
5.4.190.0431.64718.59
5.4.180.0301.71018.54
5.4.170.0501.73718.76
5.4.160.0501.56718.47
5.4.150.0431.74018.68
5.4.140.0401.74016.47
5.4.130.0271.73016.29
5.4.120.0271.84716.34
5.4.110.0331.75016.21
5.4.100.0401.65716.43
5.4.90.0331.85316.23
5.4.80.0371.66016.30
5.4.70.0472.22016.26
5.4.60.0502.44316.19
5.4.50.0602.43716.25
5.4.40.0532.40716.25
5.4.30.0532.37016.20
5.4.20.0732.42016.41
5.4.10.0572.43316.21

preferences:
45.73 ms | 401 KiB | 5 Q