这可能很容易,但我看不到路。我身边有一个购物车,用户可以在那里买东西。为此,买家可以将他的电子邮件地址输入到输入表单中。订单通过 php 发送mail()
给店主和买家。
我正在寻找一种方法来限制邮件只发送两封电子邮件,以防止垃圾邮件。我看到垃圾邮件发送者可能会输入这样的分号字符串:
email@examplecom;email@xxyz.com;hans@jdkdl.com
你不能使用 .
$validemail = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if ($validemail) {
$headers .= "Reply-to: $validemail\r\n";
}else
{
//redirect.
}
考虑到您的实际问题。
<?php
$emails = explode(';',$emailList);
if(count ($emails)<3)
{
if(filter_var_array($emails, FILTER_VALIDATE_EMAIL))
{
mail();
}
else
{
//die
}
}
?>
这应该只能选择最多两封电子邮件(前两封):
$emailString = "email@examplecom;email@xxyz.com;hans@jdkdl.com";
$emails = explode(";", $emailString);
$emails = array_slice($emails, 0, 2);
$emailString = implode(";", $emails);
var_dump($emailString);
输出:
string(31) "email@examplecom;email@xxyz.com"