Eine einstellige Prüfziffer wird u.a. bei schweizer Einzahlungsscheinen als letzte Ziffer angefügt, nach der Referenznummer, aus welcher sich diese Ziffer errechnen lässt (nach Modulo 10 - rekursiv)
Hatte Mühe damit, dies in PHP hinzukriegen, hier also der Code, falls mal jemand danach sucht und ordentlich Zeit sparen möchte:
PHP-Code:
<?php
function modulo10($ref_nr) {
$table = array(0,9,4,6,8,2,7,1,3,5);
for ($i=0; $i<strlen($ref_nr); $i++) {
$next = $table[($next + substr($ref_nr, $i, 1)) % 10];
}
return (10 - $next) % 10;
}
// bsp, ergibt 4
echo modulo10("00000000800514220080540818");
?>
Lesezeichen