Formatar CPF e CNPJ para formato user friendly
Publicado por Phylipe Venancio Soares (última atualização em 23/04/2021)
[ Hits: 23.655 ]
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
*/
?>
Função para remover acentuação de uma string
Micro-script confirmar exclusão
Lista de Tarefas - Gerenciador de Projeto Simples
Entendendo os operadores de atribuição
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (10)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









