Проверка email средствами PHP

Author Автор: Роман Чернышов    Опубликовано: 9 февраля 2011

Хочу добавить небольшую заметку, php функци. Пример проверки email адреса на соответствие требуемому формату. При написании собственных алгоритмов регистрации или авторизации пользователя на сайте, эта функция весьма необходима.

function email_check($email) {
if (!preg_match("/^(?:[a-z0-9]+(?:[-_.]?[a-z0-9]+)?@[a-z0-9_.-]+(?:\.?[a-z0-9]+)?\.[a-z]{2,5})$/i",trim($email)))
{
return false;
}
else return true;
}

Для проверки email передаете значение функции, после чего она возвращает TRUE или FALSE в зависимости от результата. Все предельно просто.

if (email_check('myname@example.com')) { echo 'Емаил верный';} else { echo 'Указанный е-маил не верный';}

делитесь вашими примерами кода, для осуществления проверки емаил адреса.

5 комментариев to “Проверка email средствами PHP”

  • AlexanderC 09.05.2011 в 7:04 пп

    Есть замечательный паттерн которым я пользуюсь-
    $patt = «/^([\w\!\#$\%\&\’\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\’\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-z0-9]{1}[a-z0-9\-]{0,62}[a-z0-9]{1})|[a-z])\.)+[a-z]{2,6})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)$/i»;

  • Юрий 30.01.2013 в 3:13 пп

    Здравствуйте! Попробовал вашу функцию. w.w@w.ru — email такого вида существует или нет? Я сам не в курсе, но ваша функция сказала, что существует.

    • Роман Чернышов 04.06.2013 в 12:59 пп

      Теоретически он может существовать, нет ни каких предпосылок что-бы считать такой емаил не действительным.

  • Igor V Belousov 24.10.2013 в 1:49 пп

    ваша функция зарежется вот на таком moy-e-mail@mail.mail
    предлагаю вот такое регулярное выражение ^(\w[\w\d\.\-_]{0,28}[\w\d]|\w)@[\wа-я_\-\d\.]*\.[\wа-я]{2,5}$

  • Igor V Belousov 24.10.2013 в 4:34 пп

    выше регулярка для js
    а для php + utf-8 ‘/^([a-z][a-z\d\.\-_]{0,28}[a-z\d]|[a-z])@[\w_\-\d\.]*\.[\w]{2,5}$/iu’

Оставить комментарий на Igor V Belousov

Автор блога
Роман Чернышов
Веб-разработчик,
Full Stack
Senior, Architect
PHP, JavaScript, Node.JS, Python, HTML 5, CSS 3, MySQL, Bash, Linux Admin
Заказать работу
предложить оффер

Моя книга
Книга. Веб-разработчик. Легкий вход в профессию
Печатная книга
Веб-разработчик.
Легкий вход в профессию
Купить за 159₽
Последние вопросы
Список вопросов
Последние комментарии
Меню

Archive

Мои проекты
Insurance CMS Love Crm CMS Совместные покупки Мой PHP Framework Хостинг для моих клиентов Лицензии на мой софт и поддержка