Pular para o conteúdo

Verificar CPF/CNPJ em PHP

Dica publicada em PHP / Miscelânea
Rodrigo Leutz rleutz
Hits: 3.970 Categoria: PHP Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar

Verificar CPF/CNPJ em PHP

Página que verifica se o CPF/CNPJ é válido.

Segue abaixo 2 arquivos para montar a página de verificação. Deixe os 2 arquivos na mesma pasta.

index.php



	
	Verificar CPF/CNPJ
	
	
	
		


Verificar CPF/CNPJ


check($_POST['cpf']); } ?>

class.cpf.php

Não é numero.";
			exit;
		}
		if(strlen($num)=='14'){
			return $this->checkCnpj($num);
		}
		else if(strlen($num)=='11'){
			return $this->checkCpf($num);
		}
		else{
			return "Quantidade de numeros inválida.";
		}
	}
	private function checkCnpj($cnpj){
		$sm1 = $cnpj[0]*5+$cnpj[1]*4+$cnpj[2]*3+$cnpj[3]*2+$cnpj[4]*9+$cnpj[5]*8+$cnpj[6]*7+$cnpj[7]*6+$cnpj[8]*5+$cnpj[9]*4+$cnpj[10]*3+$cnpj[11]*2;
		$ve1=$sm1%11;
		if($ve1<2){
			$dv1=0;
		}
		else{
			$dv1=11-$ve1;
		}
		if($dv1==$cnpj[12]){
			$sm2 = $cnpj[0]*6+$cnpj[1]*5+$cnpj[2]*4+$cnpj[3]*3+$cnpj[4]*2+$cnpj[5]*9+$cnpj[6]*8+$cnpj[7]*7+$cnpj[8]*6+$cnpj[9]*5+$cnpj[10]*4+$cnpj[11]*3+$cnpj[12]*2;
			$ve2=$sm2%11;
			if($ve2<2){
				$dv2=0;
			}
			else{
				$dv2=11-$ve2;
			}			
			if($dv2==$cnpj[13]){
				return "CNPJ Verdadeiro";
				exit;
			}
			else{
				return "CNPJ Falso";
				exit;
			}
		}
		else{
			return "CNPJ Falso";
			exit;
		}
	}
	private function checkCpf($cpf){
		if($cpf[0]==$cpf[1]&&$cpf[1]==$cpf[2]&&$cpf[2]==$cpf[3]&&$cpf[3]==$cpf[4]&&$cpf[4]==$cpf[5]&&$cpf[5]==$cpf[6]&&$cpf[6]==$cpf[7]&&$cpf[7]==$cpf[8]&&$cpf[8]==$cpf[9]&&$cpf[9]==$cpf[10]){
			return "CPF Falso(numeros repetidos)";
			exit;
		}
		$v1 = $cpf[0]*10+$cpf[1]*9+$cpf[2]*8+$cpf[3]*7+$cpf[4]*6+$cpf[5]*5+$cpf[6]*4+$cpf[7]*3+$cpf[8]*2;		
		$ve1=$v1*10%11;
		if($ve1==10){
			$ve1=0;
		}
		if($ve1==$cpf[9]){
			$v2 = $cpf[0]*11+$cpf[1]*10+$cpf[2]*9+$cpf[3]*8+$cpf[4]*7+$cpf[5]*6+$cpf[6]*5+$cpf[7]*4+$cpf[8]*3+$cpf[9]*2;
			$ve2=$v2*10%11;
			if($ve2==10){
				$ve2=0;
			}
			if($ve2==$cpf[10]){
				return "CPF Verdadeiro";
				exit;
			}
			else{
				return "CPF Falso";
				exit;
			}
		}
		else{
			return "CPF Falso";
			exit;
		}
	}
}
?>

Instalação do tigervnc com certificado SSL

NTFS + Samba com o SELinux ativado

Som no Linux (recompilando kernel)

Instalando Placa Nvidia no Fedora Core 27

Slackware 12 com ipw3945 + wpa-psk

Criando um gerador de números para Mega-Sena em PHP

Bug do PHP

Funções PHP com variáveis padrões

Encontrando dias em um intervalo de datas em PHP

Controle de acesso Web para framework CakePHP

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.