Skip to content

Instantly share code, notes, and snippets.

@RodrigoPauletti
Forked from rafael-neri/validar_cpf.php
Created May 7, 2020 03:17
Show Gist options
  • Save RodrigoPauletti/efbbd0143ac5d108c040b3901514d4af to your computer and use it in GitHub Desktop.
Save RodrigoPauletti/efbbd0143ac5d108c040b3901514d4af to your computer and use it in GitHub Desktop.
Validar CPF em PHP (Completo)
<?php
function validaCPF($cpf) {
// Extrai somente os números
$cpf = preg_replace( '/[^0-9]/is', '', $cpf );
// Verifica se foi informado todos os digitos corretamente
if (strlen($cpf) != 11) {
return false;
}
// Verifica se foi informada uma sequência de digitos repetidos. Ex: 111.111.111-11
if (preg_match('/(\d)\1{10}/', $cpf)) {
return false;
}
// Faz o calculo para validar o CPF
for ($t = 9; $t < 11; $t++) {
for ($d = 0, $c = 0; $c < $t; $c++) {
$d += $cpf{$c} * (($t + 1) - $c);
}
$d = ((10 * $d) % 11) % 10;
if ($cpf{$c} != $d) {
return false;
}
}
return true;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment