Aplicando Máscaras em Dados no PHP

Durante o desenvolvimento de sistemas, é comum a necessidade de formatar dados para exibição, como CPF, CNPJ e CEP. A boa prática recomenda armazenar esses dados no banco em seu formato “puro”, sem caracteres de formatação, garantindo maior flexibilidade e integridade. Entretanto, na apresentação de relatórios, notas fiscais ou telas de exibição, a formatação adequada desses dados melhora a legibilidade e a experiência do usuário. Para isso, podemos criar uma solução genérica e reutilizável no PHP. Criando um Helper para Máscaras Vamos implementar uma classe MaskHelper que permitirá aplicar máscaras de forma dinâmica aos dados.

Mar 7, 2025 - 20:31
 0
Aplicando Máscaras em Dados no PHP

Durante o desenvolvimento de sistemas, é comum a necessidade de formatar dados para exibição, como CPF, CNPJ e CEP. A boa prática recomenda armazenar esses dados no banco em seu formato “puro”, sem caracteres de formatação, garantindo maior flexibilidade e integridade.

Entretanto, na apresentação de relatórios, notas fiscais ou telas de exibição, a formatação adequada desses dados melhora a legibilidade e a experiência do usuário. Para isso, podemos criar uma solução genérica e reutilizável no PHP.

Criando um Helper para Máscaras

Vamos implementar uma classe MaskHelper que permitirá aplicar máscaras de forma dinâmica aos dados.

 self::cpf($value),
            14 => self::cnpj($value),
            default => $value,
        };
    }

    private static function clean(string $value): string
    {
        return preg_replace('/\D/', '', $value) ?? '';
    }
}

Como Utilizar a Classe

A implementação acima permite aplicar máscaras facilmente aos dados, tornando a formatação mais flexível e reutilizável em toda a aplicação. Veja alguns exemplos de uso:

Conclusão

A classe MaskHelper permite padronizar e reutilizar a formatação de dados em um sistema PHP, melhorando a manutenção do código e a experiência do usuário. Esse tipo de abordagem é útil para exibição de dados em relatórios, telas de administração e formulários.

Caso precise de outras máscaras, basta chamar o método mask() com o formato desejado, tornando a solução altamente flexível!