我已经使用php的filter_var($email, FILTER_VALIDATE_EMAIL)
来查明该地址是否有效。
我要继续阻止.ru电子邮件地址。我应该使用什么正则表达式和代码?您阻止的任何其他垃圾邮件或地址也将受到赞赏。
我试过这个,但想确保我正确抓住它并抓住其他垃圾邮件。
function endsWith($haystack, $needle){
$length = strlen($needle);
return (substr($haystack, -$length) === $needle);
}
谢谢VG:
function russianEmail($email,$endings = array('\.ru')){
return (preg_match('/('.implode('|', $endings).')$/i', $email))?true:false;
}
答案 0 :(得分:3)
您可以使用以下代码匹配多个域区域(或只是结尾):
$endings = array('\.ru'); // you can add zones here
preg_match('/('.implode('|', $endings).')$/i', $email);
此正则表达式也不区分大小写。
答案 1 :(得分:0)
这是我使用的(但不是我自己的工作): 将您想要发送垃圾邮件的黑暗地点替换为russianbrides.com的链接。
function my_inArray($needle, $haystack) {
// this function allows wildcards in the array to be searched
foreach ($haystack as $value) {
if (true === fnmatch($value, $needle)) {
return true;
}
}
return false;
}
//阻止通配符电子邮件。
$deny = array(
"*@hotmobilephoneoffers.com",
"*@*.ru",
"*@*.su",
);
if (my_inarray (strtolower($email_from), $deny)) {
header("location: http://www.russianbrides.com/");
exit();
}