Skip to content

Instantly share code, notes, and snippets.

@donpandix
Last active September 20, 2021 13:57
Show Gist options
  • Save donpandix/16162fb082f8c7305fe8 to your computer and use it in GitHub Desktop.
Save donpandix/16162fb082f8c7305fe8 to your computer and use it in GitHub Desktop.
Valida Rut con PHP, función minimalista
class Helper {
/**
* Función de validación de un rut basado en el algoritmo chileno
* el formato de entrada es ########-# en donde deben ser sólo
* números en la parte izquierda al guión y número o k en el
* dígito verificador
*/
static function validaRut ( $rutCompleto ) {
if ( !preg_match("/^[0-9]+-[0-9kK]{1}/",$rutCompleto)) return false;
$rut = explode('-', $rutCompleto);
return strtolower($rut[1]) == Helper::dv($rut[0]);
}
static function dv ( $T ) {
$M=0;$S=1;
for(;$T;$T=floor($T/10))
$S=($S+$T%10*(9-$M++%6))%11;
return $S?$S-1:'k';
}
}
// Ejemplo de la validación del rut
echo Helper::validaRut('1-9') ? 'Es válido' : 'No es válido :( ';
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment