adjunto una que tenia por ahi si no te molesta :D
Código PHP:
/**
* Validador de RUT con digito verificador
*
* @param string $rut
* @return boolean
*/
function RutValidate($rut) {
$rut=str_replace('.', '', $rut);
if (preg_match('/^(\d{1,9})-((\d|k|K){1})$/',$rut,$d)) {
$s=1;$r=$d[1];for($m=0;$r!=0;$r/=10)$s=($s+$r%10*(9-$m++%6))%11;
return chr($s?$s+47:75)==strtoupper($d[2]);
}
}
saludos.
PD: el highlight falla al transformar el %
la linea es $s=1;$r=$d[1];for($m=0;$r!=0;$r/=10)$s=($s+$r%10*(9-$m++%6))%11;