preg_match(): неизвестный модификатор '@'

Я использовал свою функцию с ereg (проверьте, что есть один символ @),

ereg("^[^@]{1,64}@[^@]{1,255}$", $email)

но сейчас это устарело. Почему я получаю ошибку preg_match(): Unknown modifier '@' когда я исправил это preg_match("^[^@]{1,64}@[^@]{1,255}$", $email)?

2 ответа

Решение

Вы должны добавить разделители вокруг вашего выражения.

preg_match("/^[^@]{1,64}@[^@]{1,255}$/", $email)

Я настоятельно рекомендую начать читать о синтаксисе шаблонов PCRE.

Если вы хотите подтвердить адрес электронной почты:

preg_match('/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i', $email);

это может помочь вам

Другие вопросы по тегам