Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Как проверить адрес электронной почты

Короткий ответ

filter_var() возвращает адрес, если он правильный, и false, если нет:

<?php
 
var_dump(filter_var('anna@example.com', FILTER_VALIDATE_EMAIL) !== false);
var_dump(filter_var('anna@example', FILTER_VALIDATE_EMAIL) !== false);

Результат:

bool(true)
bool(false)

Перед сохранением

Уберите пробелы по краям и приведите адрес к нижнему регистру, чтобы один и тот же адрес не сохранился дважды:

<?php
 
$email = strtolower(trim('  Anna@Example.COM '));
 
echo $email;

Результат:

anna@example.com

Что проверка не гарантирует

Правильный формат не означает, что ящик существует. Убедиться в этом можно только одним способом — отправить письмо со ссылкой для подтверждения.

Функции из этого ответа

  • filter_var — Проверяет или очищает значение по заданному правилу.
  • trim — Удаляет пробелы и другие символы с начала и конца строки.
  • strtolower — Переводит латинские буквы в нижний регистр.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.