我想使用php邮件功能将邮件发送到PHP中的数百个电子邮件地址。 我怎么能这样做?
答案 0 :(得分:5)
您也可以使用SwiftMailer
请同时查看类似的帖子here
答案 1 :(得分:2)
除非你有很多时间,否则我不会尝试编写自己的批量邮件程序。有很多问题需要考虑,包括限制电子邮件,小批量发送电子邮件,以便AOL和其他服务提供商不认为您的服务器是垃圾邮件人。您还希望包括跟踪已打开的电子邮件,跟踪退回的电子邮件,点击的链接等。
我会看一些开源选项,例如www.phplist.com这是一个非常好的开源程序,用于批量发送电子邮件。
或者在商业方面看一下Interspire Email Markerer,它是一款非常光滑的产品,物有所值,而且你可以在自己的服务器上托管它。
答案 2 :(得分:2)
您可以尝试phplist
这将是一个更好的选择
答案 3 :(得分:1)
你必须使用PHP吗?如果是这样,我会使用PHPMailer,我有一些经验,并没有让我失败的批量电子邮件发送。
或者,如果您有权访问服务器,请查看使用Postfix或Sendmail,它们是该数量邮件的更好选择。
答案 4 :(得分:1)
如果您要发送大量邮件,则不希望全部@一次,否则您将消耗太多资源。
以下是有关如何使用PEAR库的Mail_Queue组件的教程:http://pear.php.net/manual/en/package.mail.mail-queue.mail-queue.tutorial.php
它基本上会逐步发送你的电子邮件爆炸片段,而不会限制你的服务器。
答案 5 :(得分:0)
使用PHPMailer库,它具有很多功能。将电子邮件地址存储为数组并使用for循环只需将每个电子邮件地址作为字符串添加到mail-> AddAddress字段。它将负责发送大量邮件。我只使用它一次发送批量邮件到6/7地址。它也适用于数百个地址。
答案 6 :(得分:0)
你可以使用swiftmailer。通过使用批处理。
<?php
$message = Swift_Message::newInstance()
->setSubject('Let\'s get together today.')
->setFrom(array('myfrom@domain.com' => 'From Me'))
->setBody('Here is the message itself')
->addPart('<b>Test message being sent!!</b>', 'text/html')
;
$data = mysql_query('SELECT first, last, email FROM users WHERE is_active=1') or die(mysql_error());
while($row = mysql_fetch_assoc($data))
{
$message->addTo($row['email'], $row['first'] . ' ' . $row['last']);
}
$message->batchSend();
?>