Categorias
Desenvolvimento Web PHP Programação

Validação de dados em PHP5 – Parte 3

Depois de um longo período sem nada útil, vamos continuar a série mais querida deste blog: “Validação de dados em PHP5”.

Está é a parte 3 da série, e talvez a última ( a menos que surjam pedidos ou dúvidas ) da série, se você não viu, veja: parte 1, parte 2.

Como falei na parte 2, o PHP trabalha com dois padrões de ER ( Expressões Regulares ): o padrão PCRE e o padrão POSIX. Adotaremos de agora em diante o padrão PCRE por ser recomendado pelo próprio manual do PHP.

Na última parte fizemos a validação de um número de CEP.

Agora veremos outros casos de uso, primeiro dois casos simples como o do CEP, um para validar um número de telefone ( possivelmente de celular ) e outro para validar um endereço de email – este último muito útil e utilizado, pois permite uma alta confiabilidade nos dados verificados.

Nossa ER para validar um telefone:

$telER = ‘/(\([0-9]{2}\)\ )?[0-9]{4}\-[0-9]{4}/’; //formato: (67) 9999-0000

Simples não é? Que tal “complicar” um pouco mais? Então compliquemos:

//formato: 0556733334444 ou 06733334444 ou 3333-4444

$telER = '/(0((([0-9]{2}){2})|([0-9]{2})))?[0-9]{3,5}[0-9]{4}/';

E como validar uma data? Fácil fácil…

//formato: 01/01/1001

$dataER = '/(0[1-9]|[12][0-9]|3[01])\/(0[1-9]|1[012])\/[12][0-9]{3}/';

Validar um CNPJ:

//formato: 11.222.333/0001-01

$cnpjER = '/[0-9]{2}\.[0-9]{3}\.[0-9]{3}\/[0-9]{4}\-[0-9]{2}/';

Depois que a gente começa, não da vontade de parar, mas parem mesmo assim. Agora que já viram alguns exemplos de ER, tentem fazer a de vocês mesmos. Façam uma ER para validar uma idade ( considerem que existe gente com mais de 100 anos ).

Depois de você ter feito suas ER, pode continuar…

Vamos validar um endereço de email agora:

//formato: nome@host.com ou nome@subhost.host.com

$emailER = '/[[:alnum:]]\@[[:alnum:]]+(\.[[:alnum:]])+/';

Será que já ta bom?

Não, mas chega de mostrar ER pronta para vocês, ta, uma última vez, fiz um arquivo de teste explicando algumas ER: Expressões Regulares . Espero que seja útil.

Lembrem-se que estou utilizando o padrão PCRE, então nada de usar estas expressões com as funções “ereg”.

Enquanto escrevia esta parte, pensei em algumas coisas para continuação. Então, ainda esta semana concluo.

Até.

ps.: para quem ver o arquivo e ficar curioso sobre a verificação extra do CPF, saiba que é utilizado o Algoritmo de Validação do CPF ( procure por este termo no Google ) implementado em PHP pelo Jefferson Estanislau da Silva e disponibilizado no link: http://www.vivaolinux.com.br/scripts/verScript.php?codigo=401. Fiz algumas alterações, pois no original, usava ER no padrão POSIX. Darei mais detalhes na continuação.

Por Cauan Cabral

Desenvolvedor com 2 dígitos de experiências, especialista em PHP e CakePHP mas com bagagens em JavaEE, Node.js, Javascript (ES6, jQuery, Angular) e Python. Interessado em automação, Machine Learning e cozinha.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.