3v4l.org

run code in 300+ PHP versions simultaneously
<?php function isIBAN ($iban) { // Remove all whitespace $iban = preg_replace('/\s/', '', $iban); $iban = strtoupper($iban); if(strlen($iban) > 34) { return false; } if (!self::isAlphaNum($iban)) { return false; } // Create control number $alfa = str_split('ABCDEFGHIJKLMNOPQRSTUVWXYZ'); for($i = 1; $i < 27; ++$i) { $alfa_replace[] = $i + 9; } $controlNumber = str_replace($alfa, $alfa_replace, substr($iban, 4, strlen($iban)-4) . substr($iban, 0, 2) . "00"); $controlNumber = 98 - (int)bcmod($controlNumber, 97); return ((int)$controlNumber === (int)substr($iban, 2, 2)); } var_dump(isIBAN('999'));

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)
5.5.120.0100.04017.30
5.5.110.0070.03317.36
5.5.100.0030.05017.23
5.5.90.0030.03717.35
5.5.80.0130.04017.34
5.5.70.0100.05317.30
5.5.60.0170.06717.17
5.5.50.0030.08017.28
5.5.40.0070.07717.29
5.5.30.0100.07017.32
5.5.20.0070.06717.21
5.5.10.0130.04717.27
5.5.00.0070.06317.22
5.4.280.0070.06319.13
5.4.270.0070.07719.03
5.4.260.0030.05319.27
5.4.250.0100.03319.05
5.4.240.0030.07719.09
5.4.230.0070.05318.99
5.4.220.0030.07019.13
5.4.210.0070.07319.01
5.4.200.0100.07719.05
5.4.190.0130.05719.27
5.4.180.0100.07019.04
5.4.170.0100.07019.02
5.4.160.0070.04719.10
5.4.150.0170.07019.02
5.4.140.0030.05716.34
5.4.130.0000.05016.30
5.4.120.0070.06716.38
5.4.110.0030.03716.38
5.4.100.0070.07316.58
5.4.90.0130.05016.55
5.4.80.0100.05716.32
5.4.70.0030.04016.49
5.4.60.0000.08016.30
5.4.50.0070.04316.36
5.4.40.0070.06016.27
5.4.30.0000.04716.20
5.4.20.0000.03716.48
5.4.10.0100.03016.43
5.4.00.0030.06715.84
5.3.280.0030.08014.60
5.3.270.0170.07014.61
5.3.260.0070.06714.67
5.3.250.0100.07014.58
5.3.240.0070.04714.60
5.3.230.0000.08314.65
5.3.220.0070.05014.61
5.3.210.0070.03714.61
5.3.200.0070.05314.62
5.3.190.0000.04314.63
5.3.180.0070.05714.60
5.3.170.0100.04314.58
5.3.160.0070.06314.63
5.3.150.0070.06314.42
5.3.140.0070.03714.66
5.3.130.0000.04014.56
5.3.120.0070.03714.66
5.3.110.0070.05714.55
5.3.100.0000.08014.08
5.3.90.0070.07314.07
5.3.80.0170.06714.03
5.3.70.0100.04314.04
5.3.60.0070.04314.04
5.3.50.0030.07013.85
5.3.40.0070.07314.00
5.3.30.0000.08013.96
5.3.20.0100.07013.75
5.3.10.0030.04013.69
5.3.00.0000.04713.48
5.2.170.0030.06011.20
5.2.160.0030.06311.20
5.2.150.0030.04011.04
5.2.140.0130.06011.21
5.2.130.0100.04311.16
5.2.120.0000.05311.13
5.2.110.0030.05011.16
5.2.100.0030.05011.15
5.2.90.0100.05011.13
5.2.80.0170.05011.09
5.2.70.0100.05711.16
5.2.60.0100.05011.10
5.2.50.0070.06311.07
5.2.40.0030.05311.04
5.2.30.0000.04011.00
5.2.20.0030.06310.82
5.2.10.0000.04010.72
5.2.00.0000.05010.57
5.1.60.0070.05010.10
5.1.50.0100.0479.92
5.1.40.0070.05010.03
5.1.30.0030.03310.35
5.1.20.0070.04010.38
5.1.10.0000.03010.13
5.1.00.0030.02310.16
5.0.50.0070.0408.65
5.0.40.0000.0378.40
5.0.30.0000.0608.28
5.0.20.0030.0338.26
5.0.10.0030.0208.17
5.0.00.0030.0308.20
4.4.90.0000.0407.63
4.4.80.0000.0337.63
4.4.70.0070.0337.63
4.4.60.0070.0237.63
4.4.50.0000.0237.63
4.4.40.0000.0337.63
4.4.30.0000.0407.63
4.4.20.0030.0337.63
4.4.10.0030.0377.63
4.4.00.0000.0607.63
4.3.110.0030.0337.63
4.3.100.0000.0307.63
4.3.90.0000.0207.63
4.3.80.0030.0437.63
4.3.70.0000.0207.63
4.3.60.0000.0277.63
4.3.50.0000.0207.63
4.3.40.0000.0237.63
4.3.30.0030.0237.63
4.3.20.0030.0137.63
4.3.10.0000.0177.63
4.3.00.0000.0177.63

preferences:
138.69 ms | 1394 KiB | 7 Q