Quando si importano Codici Fiscali, dopo aver controllato che siano della lunghezza giusta, è buona norma verificare che il codice di controllo sia corretto. Vi propongo quindi una facile soluzione in PHP per operare questo controllo.

[php]
// verifica codice di controllo CF
// $cf = il nostro codice fiscale

// array corrispondenze tra i caratteri e i valori dei caratteri in posizioni dispari
$val_disp = array("0" => "1", "1" => "0", "2" => "5", "3" => "7", "4" => "9", "5" => "13", "6" => "15", "7" => "17", "8" => "19", "9" => "21", "A" => "1", "B" => "0", "C" => "5", "D" => "7", "E" => "9", "F" => "13", "G" => "15", "H" => "17", "I" => "19", "J" => "21", "K" => "2", "L" => "4", "M" => "18", "N" => "20", "O" => "11", "P" => "3", "Q" => "6", "R" => "8", "S" => "12", "T" => "14", "U" => "16", "V" => "10", "W" => "22", "X" => "25", "Y" => "24", "Z" => "23");
// array corrispondenze tra i caratteri e i valori dei caratteri in posizioni pari
$val_par = array("0" => "0", "1" => "1", "2" => "2", "3" => "3", "4" => "4", "5" => "5", "6" => "6", "7" => "7", "8" => "8", "9" => "9", "A" => "0", "B" => "1", "C" => "2", "D" => "3", "E" => "4", "F" => "5", "G" => "6", "H" => "7", "I" => "8", "J" => "9", "K" => "10", "L" => "11", "M" => "12", "N" => "13", "O" => "14", "P" => "15", "Q" => "16", "R" => "17", "S" => "18", "T" => "19", "U" => "20", "V" => "21", "W" => "22", "X" => "23", "Y" => "24", "Z" => "25");
// array corrispondenze tra i caratteri e il modulo 26 della soma dei precedenti valori
$val_resto = array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z");
$cf_summ = 0;
for ($i=0; $i < 15 ; $i++)
{
if($i %2 == 0 )
$cf_summ += $val_disp[substr($cf, $i, 1)]; //cf pos dispari (indice $i pari)
else
$cf_summ += $val_par[substr($cf, $i, 1)]; //cf pos pari (indice $i dispari)
}
if ($val_resto[$cf_summ%26] != substr($cf, 15, 1)) // controllo se il dato ottenuto coincide con il codice di controllo del codice fiscale
echo "Codice fiscale valido";
else
echo ‘Codice fiscale non valido! CF: ‘.$cf.’ Codice di controllo calcolato: ‘.$val_resto[$cf_summ%26];
[/php]