PHP Beitrag

IBAN mit PHP validieren

Die Validierung von Daten ist für Programmierer ein tägliches Thema.

Natürlich bleibt da die Validierung der recht „neuen“ internationalen Kontonummer (IBAN) nicht aus.

Für die in Deutschland gültige IBAN gilt:

  1. die IBAN darf nicht länger als 22 Zeichen sein
  2. die ersten beiden Zeichen stehen für das Land (in diesem Fall also DE)
  3. generell gilt, die ersten beiden Ziffern nach dem Land, bilden die Prüfsumme

Mehr unter Wikipedia IBAN

Dieses Skript funktioniert nur mit deutschen IBAN Codes!

<?php

function validate_IBAN( $iban ) {
    
    $iban = str_replace( ' ', '', $iban );
    
    $clean = substr( $iban, 4 )
        . strval( ord( $iban{0} ) - 55 )
        . strval( ord( $iban{1} ) - 55 )
        . substr( $iban, 2, 2 );

    $rest = 0;
    
    for ( $pos = 0; $pos < strlen( $clean ); $pos += 7 ) {
        
        $part = strval( $rest ) . substr( $clean, $pos ,7 );
        $rest = intval( $part ) % 97;
    }
    
    // Prüfziffer
    $spf = sprintf("%02d", 98 - $rest);

    if ( substr( $iban, 2, 2 ) == '00' )
        return substr_replace( $iban, $spf, 2, 2 );
    else
        return ($rest == 1) ? true : false;
}

var_dump(validate_IBAN('YOUR_IBAN'));
IBAN mit PHP validieren
© 2017 Gino Dola
PHP & Web Developer

Schreibe einen Kommentar