我想验证我在PHP中添加的电子邮件。为此,我使用以下函数:
function checkEmail($email) {
if(preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])↪*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/",$email)){
list($username, $domain) = split('@', $email);
if(!checkdnsrr($domain, 'MX')) {
return false;
}
return true;
}
}
然而,现在它返回以下警告:
preg_match(): Compilation failed: nothing to repeat at offset 33
我该如何解决这个问题?
答案 0 :(得分:2)
为什么preg_match
,当您可以使用PHP中的FILTER_VALIDATE_EMAIL
if(filter_var($email, FILTER_VALIDATE_EMAIL))