PHP Funktion zur Überprüfung von IBAN

27. April 2014

Da IBAN nun auch eine Frage der Programmierer Die Spezifikationen sind sehr durchdacht, so hat die IBan immer eine feste länge. In Deutschland sind dies 22 Zeichen, in anderen Löndern darf es bis max. 36 gehen. Die ersten beiden Ziffern, sind die Länderkennung, die 3. und 4. stelle sind eine Sicherheitskennziffer, danach die BLZ und […]

PHP Funktion zur Überprüfung von IBAN
Da IBAN nun auch eine Frage der Programmierer Die Spezifikationen sind sehr durchdacht, so hat die IBan immer eine feste länge. In Deutschland sind dies 22 Zeichen, in anderen Löndern darf es bis max. 36 gehen. Die ersten beiden Ziffern, sind die Länderkennung, die 3. und 4. stelle sind eine Sicherheitskennziffer, danach die BLZ und dann die Kontonummer. Hier sehr ihr eine Funktion zur IBAN Überprüfung. [php] function checkIBAN($iban) { $iban = strtolower(str_replace(' ','',$iban)); $Countries = array('al'=>28,'ad'=>24,'at'=>20,'az'=>28,'bh'=>22,'be'=>16,'ba'=>20,'br'=>29,'bg'=>22,'cr'=>21,'hr'=>21,'cy'=>28,'cz'=>24,'dk'=>18,'do'=>28,'ee'=>20,'fo'=>18,'fi'=>18,'fr'=>27,'ge'=>22,'de'=>22,'gi'=>23,'gr'=>27,'gl'=>18,'gt'=>28,'hu'=>28,'is'=>26,'ie'=>22,'il'=>23,'it'=>27,'jo'=>30,'kz'=>20,'kw'=>30,'lv'=>21,'lb'=>28,'li'=>21,'lt'=>20,'lu'=>20,'mk'=>19,'mt'=>31,'mr'=>27,'mu'=>30,'mc'=>27,'md'=>24,'me'=>22,'nl'=>18,'no'=>15,'pk'=>24,'ps'=>29,'pl'=>28,'pt'=>25,'qa'=>29,'ro'=>24,'sm'=>27,'sa'=>24,'rs'=>22,'sk'=>24,'si'=>19,'es'=>24,'se'=>24,'ch'=>21,'tn'=>24,'tr'=>26,'ae'=>23,'gb'=>22,'vg'=>24); $Chars = array('a'=>10,'b'=>11,'c'=>12,'d'=>13,'e'=>14,'f'=>15,'g'=>16,'h'=>17,'i'=>18,'j'=>19,'k'=>20,'l'=>21,'m'=>22,'n'=>23,'o'=>24,'p'=>25,'q'=>26,'r'=>27,'s'=>28,'t'=>29,'u'=>30,'v'=>31,'w'=>32,'x'=>33,'y'=>34,'z'=>35); if(strlen($iban) == $Countries[substr($iban,0,2)]){ $MovedChar = substr($iban, 4).substr($iban,0,4); $MovedCharArray = str_split($MovedChar); $NewString = ""; foreach($MovedCharArray AS $key => $value){ if(!is_numeric($MovedCharArray[$key])){ $MovedCharArray[$key] = $Chars[$MovedCharArray[$key]]; } $NewString .= $MovedCharArray[$key]; } if(bcmod($NewString, '97') == 1) { return TRUE; } else{ return FALSE; } } else{ return FALSE; } } [/php] Sehr von Vorteil, bei der Überprüfung von Eingaben in einem Shop zum Bsp.

Kommentare

Kommentare werden geladen...

Weitere Beiträge