Intereting Posts
json_encode () сбрасывание косых черт Не удается подключиться к MySQL на Live с Laravel 5 получить тайм-аут сеанса php-сервера Если PHP mt_rand () использует более быстрый алгоритм, чем rand (), почему бы просто не изменить rand () для использования более новой реализации? Рекурсивное удаление CakePHP Mysql в PHP – как обновить только одну строку в таблице, но с наибольшим номером id Улучшена безопасность PHP, сохраняя файлы вне публичной папки? напечатать массив как код Йомен против UrlRouting Обновление laravel-композитора: запрашиваемый PHP-расширение dom отсутствует в вашей системе Замена пустого пространства на preg_replace вызывает недопустимые символы с UTF-8 Как строки сбрасываются для каждого расширения базы данных в php? Как проверить, была ли получена почта с помощью php Получение абсолютного пути внешних изображений веб-страницы проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с '' в строке 1

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

Возможный дубликат:
Как проверить адрес электронной почты в PHP

Мне было интересно, что все делают в отношении проверки адресов электронной почты и насколько обширна проверка.

Например, из тех методов, которые являются предпочтительными и почему?

  1. Обширная проверка: http://www.linuxjournal.com/article/9585?page=0,3
  2. Фильтр PHP: http://php.net/manual/en/filter.filters.validate.php
  3. Эреги: http://www.totallyphp.co.uk/code/validate_an_email_address_using_regular_expressions.htm
  4. Подгонка с проверкой DNS: http://www.soaptray.com/blog/2008/04/validate-email-addresses-using-php/

Моя цель – найти хорошее и надежное решение для среднего проекта, поэтому, когда придет время проверить адрес электронной почты, я точно знаю, что я буду использовать.

Любая обратная связь очень ценится!

-Ryan

Related of "Подтвердить адрес электронной почты в PHP"

http://www.regular-expressions.info/email.html имеет рекомендованный RFC2822 рег.

Используйте встроенные фильтры PHP для синтаксической проверки и отправьте электронное письмо с подтверждением для подтверждения намерения.

Я не думаю, что есть надежное решение, кроме отправки электронной почты на этот адрес и запроса ответа. Регулярные выражения и тому подобное являются болью для правильной реализации.

Ваше решение будет зависеть от того, насколько ценен этот адрес электронной почты. Вы отправляете информационный бюллетень? Подтверждение продаж? Критическое предупреждение? Некоторое тривиальное регулярное выражение может быть достаточно для первого. Получение какого-то подтверждения было бы ценным для второго. Повторные подтверждения действительности (например, ежемесячные проверки) могут потребоваться для третьего.

Вот замечательная запись в блоге об этом: http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx

Лично я обычно использую простой RegExp, который будет проверять большинство адресов, которые вы найдете в Интернете, поэтому решение в третьей ссылке – это то, что я буду использовать. Но лучшим решением является, я думаю, отправить электронное письмо на указанный адрес (используя простой RegExp перед тем, чтобы предупредить пользователя) со ссылкой для его проверки. Поэтому вы уверены, что это действительный и выделенный адрес.