Проверка email средствами PHP
Хочу добавить небольшую заметку, php функци. Пример проверки email адреса на соответствие требуемому формату. При написании собственных алгоритмов регистрации или авторизации пользователя на сайте, эта функция весьма необходима.
Просмотр кода PHP
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 в зависимости от результата. Все предельно просто.
Просмотр кода PHP
if (email_check('myname@example.com')) { echo 'Емаил верный';} else { echo 'Указанный е-маил не верный';} |
делитесь вашими примерами кода, для осуществления проверки емаил адреса.

Автор:







Есть замечательный паттерн которым я пользуюсь-
$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»;
Здравствуйте! Попробовал вашу функцию. w.w@w.ru — email такого вида существует или нет? Я сам не в курсе, но ваша функция сказала, что существует.
Теоретически он может существовать, нет ни каких предпосылок что-бы считать такой емаил не действительным.
ваша функция зарежется вот на таком moy-e-mail@mail.mail
предлагаю вот такое регулярное выражение ^(\w[\w\d\.\-_]{0,28}[\w\d]|\w)@[\wа-я_\-\d\.]*\.[\wа-я]{2,5}$
выше регулярка для js
а для php + utf-8 ‘/^([a-z][a-z\d\.\-_]{0,28}[a-z\d]|[a-z])@[\w_\-\d\.]*\.[\w]{2,5}$/iu’