function CPFOk($cpf) { /* FACICOMP - Faculdade de Ciência da Computação de Caratinga Bruno Rodrigues Silva 28/11/2000 brunors@spep.com.br Modificado para funcao por Clever Anjos (clever@acip.org.br) 10/02/2002 Foi retirado o array auxiliar. */ $nulos = array("12345678909","11111111111","22222222222","33333333333", "44444444444","55555555555","66666666666","77777777777", "88888888888","99999999999","00000000000"); foreach ( $nulos as $nulo ) if ( $cpf == $nulo ) return 0; /*Calcula o penúltimo dígito verificador*/ $acum=0; for ($i=0; $i<9; $i++) $acum+= $cpf[$i]*(10-$i); $x=$acum % 11; $acum = ($x>1) ? (11 - $x) : 0; /* Retorna falso se o digito calculado eh diferente do passado na string */ if ( $acum != $cpf[9]) return 0; $acum=0; for ($i=0; $i<10; $i++) $acum+= $cpf[$i]*(11-$i); $x=$acum % 11; $acum = ($x > 1) ? (11-$x) : 0; if ( $acum != $cpf[10]) return 0; return 1; }