Formatar CPF e CNPJ para formato user friendly
Publicado por Phylipe Venancio Soares (última atualização em 23/04/2021)
[ Hits: 22.643 ]
Homepage: http://www.energiageradores.com
Download formata_cpf_cnpj.php.txt
Download formatar-cpf-cnpj (versão 2)
Função para formatar CPF e CNPJ.
Pode ser usado com ou sem pontuação.
Ela define se é cpf ou cnpj pela quantidade de caracteres.
Versão 2 - Enviado por Pamela Maia em 22/04/2021
Changelog: Codigo simplificado, mas com a mesma funcionalidade
<?php /* Por Phylipe Soares E-mail: phylipesoares@gmail.com Em: Março/ 2018 */ function formata_cpf_cnpj($cpf_cnpj){ /* Pega qualquer CPF e CNPJ e formata CPF: 000.000.000-00 CNPJ: 00.000.000/0000-00 */ ## Retirando tudo que não for número. $cpf_cnpj = preg_replace("/[^0-9]/", "", $cpf_cnpj); $tipo_dado = NULL; if(strlen($cpf_cnpj)==11){ $tipo_dado = "cpf"; } if(strlen($cpf_cnpj)==14){ $tipo_dado = "cnpj"; } switch($tipo_dado){ default: $cpf_cnpj_formatado = "Não foi possível definir tipo de dado"; break; case "cpf": $bloco_1 = substr($cpf_cnpj,0,3); $bloco_2 = substr($cpf_cnpj,3,3); $bloco_3 = substr($cpf_cnpj,6,3); $dig_verificador = substr($cpf_cnpj,-2); $cpf_cnpj_formatado = $bloco_1.".".$bloco_2.".".$bloco_3."-".$dig_verificador; break; case "cnpj": $bloco_1 = substr($cpf_cnpj,0,2); $bloco_2 = substr($cpf_cnpj,2,3); $bloco_3 = substr($cpf_cnpj,5,3); $bloco_4 = substr($cpf_cnpj,8,4); $digito_verificador = substr($cpf_cnpj,-2); $cpf_cnpj_formatado = $bloco_1.".".$bloco_2.".".$bloco_3."/".$bloco_4."-".$digito_verificador; break; } return $cpf_cnpj_formatado; } ## Como Usar. $cpf = "12345678909"; echo "CPF Formatado: ".formata_cpf_cnpj($cpf); /* Resultado: CPF Formatado: 123.456.789-09 */ $cnpj = "11222333000181"; echo "CNPJ Formatado: ".formata_cpf_cnpj($cnpj); /* Resultado: CNPJ Formatado: 11.222.333/0001-81 */ ?>
Gerador de palavras aleatórias
Classe para gerar calendário em PHP
Graficos 3D simples e configuraveis com PHP
Converte uma string binaria em seu respectivo codigo ascii
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (1)
É cada coisa que me aparece! - não é só 3% (1)
Alguma pessoa pode me ajudar com drriver Core i3 7020u (Debian 12)? (2)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta