2015-03-12 3 views
0
function validateemail($email) { 
$v = "/[a-zA-Z0-9_-.+][email protected][a-zA-Z0-9-]+.[a-zA-Z]+/"; 

return (bool)preg_match($v, $email); 
} 
// check e-mail address, to see if it's a valid phone number 
if ($validateemail($email)) { 
$error = true; 
echo 'Invalid phone number!'; 
} 

Я пытаюсь проверить, если адрес электронной почты действителен с помощью функции validateemail, если это неверный номер телефона отображается сообщение и $error устанавливается истина. Однако, похоже, я не могу заставить этот код работать, по-моему, нет синтаксических ошибок. Любой совет будет принят во внимание.Regex PHP - Проверка адреса электронной почты

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

Заранее благодарен!

+5

http://emailregex.com/ –

+1

Для будущих читателей, которые не делают этого для проекта колледжа, используйте ['filter_var ($ email, FILTER_VALIDATE_EMAIL)'] (http://php.net/manual/en/filter.examples.validation.php). –

+1

Также нашел свой ответ на http://emailregex.com – devXen

ответ

0

У вас есть - не в конечном положении внутри первой группы [a-zA-Z0-9_-.+].

Попробуйте

[a-zA-Z0-9_.+-][email protected][a-zA-Z0-9-]+.[a-zA-Z]+

Посмотрите на эту example.

0

Вам необходимо уйти от черточки, так как она также может использоваться для обозначения диапазона символов.

function validateemail($email) { 
    $v = "/[a-zA-Z0-9_\-.+][email protected][a-zA-Z0-9-]+.[a-zA-Z]+/"; 
    return (bool)preg_match($v, $email); 
} 
0

Если вы хотите, чтобы проверить, если это Валиде по электронной почте или нет, я хотел бы предложить filter_var ($ электронной почте, FILTER_VALIDATE_EMAIL, например:

<?php 
$email = "[email protected]"; 

if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false) { 
    echo("$email is a valid email address"); 
} else { 
    echo("$email is not a valid email address"); 
} 
?> 

Источник: www.w3schools. com/php/filter_validate_email.asp

Смежные вопросы