PHP的mail()函数是否可以防止滥用?

时间:2013-12-30 22:16:59

标签: php email

我想知道是否有任何可以防止我意外破坏电子邮件帐户的内容。例如,假设我有以下代码:

while(true){
    mail("me@website.com","subject","Message");
}

对我而言,该脚本将永远通过电子邮件发送该帐户,如果它没有良好的垃圾邮件防护,它似乎会使该帐户无效。想法?

3 个答案:

答案 0 :(得分:1)

不,该代码完全按照您的说法执行 - 向特定帐户发送无限电子邮件。作为开发人员,您有责任确保代码不会以这种方式搞乱!通常它很容易,它只是使用一些常识来确保你不会发送十亿封电子邮件只是说“消息”......

答案 1 :(得分:0)

mail()函数容易被滥用,这就是为什么一般不鼓励使用PHPMailer这样的库。

虽然php功能本身没有垃圾邮件保护,但任何体面的电子邮件托管服务和/或电子邮件管理软件都可以阻止电子邮件地址以防止持续垃圾邮件。

答案 2 :(得分:0)

您可以使用与数据库的交互,并在每次迭代时检查您是否已经开始轰炸它之前已经向收件人发送了一些邮件。例如:

define('_MAX_ALLOWED' , 5) ; 

while(true){
    if(getNumberOfMails("me@website.com") > _MAX_ALLOWED ) break ; 
    mail("me@website.com","subject","Message");
    saveMailToDatabase("me@website.com","subject","Message");
}