PHP проверка адреса электронной почты, email

Серию валидаторов пополняю функцией проверки введенного email на соответствие формальным требованиям.

По стандарту RFC822

Если есть необходимость соблюсти все требования, которые упомянуты в громоздкой спецификации RFC822, то лучший путь — воспользоваться функцией библиотеки IMAP для PHP:

Вообще-то функция может проверять сразу несколько адресов (записанных в одной строке). И мне не ясна роль параметра $default_host, от которого результат функции не зависит. В итоге, для одного адреса получается вот такой валидатор:

Модуль imap подключается соответствующими манипуляциями в файле php.ini, если он не подключен.

Проверка email в WordPress и Drupal

Так как стандарт RFC, мягко говоря, мало кто соблюдает в силу его «перегруженности», то во многих CMS реализованы свои «облегченные» функции проверки адреса электронной почты.

В WP реализована функция, которая проверяет email и возвращает либо false — если адрес не прошел проверку,  либо «подчищенный» валидный email.

Drupal тоже предлагает свою функцию для проверки, она возвращает булевое значение соответствующее результату проверки.

Исходный код функций вы можете изучить самостоятельно.

Пример проверки адреса электронной почты на PHP

Раз уж такие именитые CMS не брезгуют отступать от стандартов, то не вижу причин почему бы не использовать собственную функцию для проверки. Иногда я пользуюсь довольно мощной функцией из Drupal 6, алгоритм которой следует предписаниям стандарта RFC 2822.

Она удобна тем, что шаблоны для разных частей формата объявляются отдельно. Валидацию пройдут адреса не только с буквенными именами почтового домена, но и почтовым сервером, представленным в виде ip адреса.

Написать комментарий

Мало букафф? Читайте есчо !

Проверка кода ИНН на PHP

Сентябрь 23, 2015 г.

В этом году писал реализацию данной функции для проекта C2C-base. Оказывается, бывает ИНН двух видов - для юридических лиц и физ лиц - 10 или 12 знаков соответственно. Проверка большинства подобных кодов осуществляется по контрольным цифрам, содержащимся ...

Читать

Валидатор для JSON строки в PHP

Октябрь 2, 2018 г.

К JSON можно относиться как к одной из разновидностей текстовых форматов передачи данных. Но для PHP это просто ещё одна скалярная строка. Как определить, что перед нами действительно JSON? Чтобы убедиться, придется попытаться декодировать строку. ...

Читать

 

Комментарии к «PHP проверка адреса электронной почты, email»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий:

Один комментарий в “PHP проверка адреса электронной почты, email”

  1. bigcinema:

    Регулярка гарантирует, что этот адрес не эксплуатирует какие-то уязвимости вашего способа слать письма.