Existem diversas maneiras de determinar se uma variável contém um endereço de e-mail válido. Estas técnicas não verificam se o endereço de e-mail existe, mas determinam se a cadeia contida em uma variável respeita o formato de um endereço de e-mail. Nesse artigo, veremos diferentes formas de averiguar essa questão.
Uma das opções para verificar se um endereço de e-mail é válido é empregando um filtro de PHP como o filter_var(), que devolve os dados filtrados:
if(filter_var("yourEmailHere", FILTER_VALIDATE_EMAIL)) { // é válido } else { // não é válido }
Utilizando expressões regulares, é possível verificar se um endereço de e-mail digitado, por exemplo, através de um formulário, é válido. A função a seguir verifica se uma string (cadeia de caracteres) está correta.
function VerificarEndereçoEmail($endereço) { $Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#'; if(preg_match($Sintaxe,$endereço)) return true; else return false; }
Depois de obter o campo 'endereço' de um formulário:
$endereço=htmlentities($_POST['endereço']);
if(VerificarEndereçodeEmail($endereço))
echo '<p>Seu endereço é válido.</p>';
else
echo '<p>Seu endereço de e-mail não é válido.</p>';
Os sinais de jogo da velha (#) são os delimitadores das expressões regulares enquanto o circunflexo (^) indica que a string deve começar com as informações que virão a seguir. Por fim, o cifrão ($) indica que a cadeia de caracteres deve ser finalizada com os dados que o precedem.
O sinal \w é uma classe abreviada que corresponde a A-Za-z0-9_. Ou seja, as 26 letras do alfabeto em letras maiúsculas ou minúsculas, os dez dígitos e um traço inferior (underline).
Foto: © Everypixel