Pular para o conteúdo

Verificar CPF/CNPJ em PHP

Dica publicada em PHP / Miscelânea
Rodrigo Leutz rleutz
Hits: 3.969 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;
		}
	}
}
?>

O comando "nice"

Instalação do tigervnc com certificado SSL

Branch do git no bash

Simple Server Monitor Bot - Telegram + PHP

NTFS + Samba com o SELinux ativado

Pegar parte do conteúdo (dados) de outro site com PHP utilizando explode()

Fedora Core 1 :: asp2php-gui

register_globals e $_REQUEST

Laravel 5.4: erro ao rodar o comando migrate (Specified key was too long error) [Resolvido]

Framework CakePHP - Novo site em português

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.