PHP регулярное выражение email и доверие пользователей

PHP регулярное выражение email и доверие пользователей

От автора: доверяй, но пользователей своих проверяй! Особенно правильность ввода ими адресов почтовых ящиков. А то ни рассылки, ни маркетинга и клиентов вам не видать. Да и обидно, понимаешь, когда тебя «обманывают» и вводят какую-то «абракадабру»! Поэтому сегодня научимся, как создавать PHP регулярное выражение email.

Основы

Любой адрес электронного почтового ящика состоит из двух частей: левая (до «собаки») и правая (после «собаки»). Будет развивать наш успех постепенно, и реализуем проверку ввода эти составляющих «мыла».

<?php
$str="login@pochta.ru";
if (preg_match("/[0-9a-z]+@[a-z]/", $str)) {
 echo "Email введен верно!";
}
else {
 echo "Формат ввода email не верен!";
}
?>

PHP регулярное выражение email и доверие пользователей

Продолжим расширять наше PHP регулярное выражение для проверки email. В «дособачную» часть добавим еще несколько правил:

^[a-zA-Z0-9_\-.]

Email может начинаться с цифры, с маленькой или большой буквы.

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее

В середине «дособачины» может использоваться нижнее подчеркивание, дефис (экранированный слешем), а затем любой символ.

PHP регулярное выражение email и доверие пользователей

«Допилим» часть шаблона после собаки:

PHP регулярное выражение email и доверие пользователей

Во второй части выражения PHP проверка email построена по тем же канонам. Единственное, на что стоит обратить внимание, это экранированная точка и знак доллара. Он означает окончание строки.

Скептицизм

Но лучше с регулярками сильно «не напрягаться». Особенно при валидации формата адреса «мыла». Пользователь может придумать такой адрес, который ему вздумается. Поэтому «обуздать» его, предусмотреть все «а если» практически невозможно.

Для примера покажу вам, какой может быть регулярка для PHP проверки email на валидность:

PHP регулярное выражение email и доверие пользователей

Сами понимаете, что такое «страхолюдие» боязно даже в скрипт вставлять :) . Работает или не работает, не знаю. Да и проверять не хочу.

Многие эксперты придерживаются в этом вопросе минимализма. Они считают, что главным атрибутом, который должен присутствовать в email, это «собака». Все остальное неважно! И я сними согласен.

Предположим, что к вам зашел пользователь, адрес «мыла» которого «не пролазит» в установленные регуляркой рамки. Ну, и что дальше? Скорее всего, человек просто плюнет и уйдет. И сколько таких «наплевавших» ушло с вашего сайта, вы не будете знать.

Представляю вам самый идеальный шаблон для проверки email:

/@/

Лучше и проще не придумаешь :) .

Ну, а если нужно проверить существования email в PHP, то для этого потребуется написать очень длинный скрипт. Так что лучше воспользоваться одним из специализированных сервисов. На сегодня закончили с проверкой. А то можно и перестараться (см. пример выше).

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее
Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Хотите изучить регулярные выражения на PHP?

Прямо сейчас посмотрите 12-ти часовой курс по регулярным выражениям на PHP!

Смотреть курс

Метки:

Похожие статьи:

Комментарии Вконтакте:

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree