PHP регулярний вираз email і довіру користувачів

14

Від автора: довіряй, але своїх користувачів перевіряй! Особливо правильність введення ними адрес поштових скриньок. А то ні розсилки, ні маркетингу і клієнтів вам не бачити. Та й прикро, розумієш, коли тебе обманюють» і вводять якусь абракадабру»! Тому сьогодні навчимося, як створювати PHP регулярний вираз email.

Основи

Будь адресу електронної поштової скриньки складається з двох частин: ліва (до «собаки») і права (після «собаки»). Буде розвивати наш успіх поступово, і реалізуємо перевірку введення цих складових «мила».

PHP регулярний вираз email і довіру користувачів

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

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

Email може починатися з цифри, з маленької чи великої літери.

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

PHP регулярний вираз email і довіру користувачів

«Допилим» частина шаблону після собаки:

PHP регулярний вираз email і довіру користувачів

У другій частині виразу PHP перевірка email побудована за тим же канонам. Єдине, на що варто звернути увагу, це екранована крапка і знак долара. Він означає закінчення рядка.

Скептицизм

Але краще з регулярками сильно «не напружуватися». Особливо при валідації формату адреси «мила». Користувач може придумати такий адресу, що йому заманеться. Тому «приборкати» його, передбачити всі «а якщо» практично неможливо.

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

PHP регулярний вираз email і довіру користувачів

Самі розумієте, що таке «страхолюдие» боязно навіть в скрипт вставляти PHP регулярний вираз email і довіру користувачів . Працює або не працює, не знаю. Та й перевіряти не хочу.

Багато експертів дотримуються в цьому питанні мінімалізму. Вони вважають, що головним атрибутом, який повинен бути присутнім в email, це «собака». Все інше неважливо! І я з ними згоден.

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

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

/@/

Краще і простіше не придумаєш PHP регулярний вираз email і довіру користувачів .

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