Verificar CPF/CNPJ em PHP
Publicado por Rodrigo Leutz em 08/03/2019
[ Hits: 3.565 ]
Blog: https://uware.com.br
<?php /* Autor: Rodrigo Leutz Descrição: Verificar cpf/cnpj em php */ require "class.cpf.php"; ?> <html> <head> <title>Verificar CPF/CNPJ</title> <meta charset="UTF-8"> </head> <body> <div id="container"> <center> <br><br> <h2>Verificar CPF/CNPJ</h2> <br> <form method="post"> <input type="text" name="cpf"> <input type="submit" value="Verificar"> </form> <?php if(isset($_POST['cpf'])&&!empty($_POST['cpf'])){ $cpf = new Cpf(); echo $cpf->check($_POST['cpf']); } ?> </center> </div> </body> </html>
<?php /* Autor: Rodrigo Leutz Descrição: Verificar cpf/cnpj em php */ class Cpf{ public function check($num){ $num = str_replace(".","",$num); $num = str_replace("-","",$num); $num = str_replace("/","",$num); if(!is_numeric($num)){ return "<font color='red'>Não é numero.</font>"; exit; } if(strlen($num)=='14'){ return $this->checkCnpj($num); } else if(strlen($num)=='11'){ return $this->checkCpf($num); } else{ return "<font color='red'>Quantidade de numeros inválida.</font>"; } } 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 "<font color='green'>CNPJ Verdadeiro</font>"; exit; } else{ return "<font color='red'>CNPJ Falso</font>"; exit; } } else{ return "<font color='red'>CNPJ Falso</font>"; 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 "<font color='red'>CPF Falso(numeros repetidos)</font>"; 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 "<font color='green'>CPF Verdadeiro</font>"; exit; } else{ return "<font color='red'>CPF Falso</font>"; exit; } } else{ return "<font color='red'>CPF Falso</font>"; exit; } } } ?>
Simple Server Monitor Bot - Telegram + PHP
NTFS + Samba com o SELinux ativado
Instalando Placa Nvidia no Fedora Core 27
Abrindo mais de um cliente Telegram
Instalação do tigervnc com certificado SSL
Componente de backup para Joomla
Servidor interno no PHP 5.4 para testes
Como hospedar projetos no SourceForge.net
[RESOLVIDO] Magento: Não consigo fazer login de administrador após instalação
Nenhum comentário foi encontrado.
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Miyoo Mini Plus + Onion OS (Linux)
IA local no bolso, novo visual no Raspberry Pi OS e mais destaques do software livre
Kernel turbinado, compatibilidade em alta e debate sobre sustentabilidade: o dia no mundo Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Como listar os arquivos em "bloquin... [RESOLVIDO] (6)
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (2)