用PHP发送批量电子邮件

时间:2009-08-24 04:42:06

标签: php email

我想使用php邮件功能将邮件发送到PHP中的数百个电子邮件地址。 我怎么能这样做?

7 个答案:

答案 0 :(得分:5)

您也可以使用SwiftMailer

请同时查看类似的帖子here

答案 1 :(得分:2)

除非你有很多时间,否则我不会尝试编写自己的批量邮件程序。有很多问题需要考虑,包括限制电子邮件,小批量发送电子邮件,以便AOL和其他服务提供商不认为您的服务器是垃圾邮件人。您还希望包括跟踪已打开的电子邮件,跟踪退回的电子邮件,点击的链接等。

我会看一些开源选项,例如www.phplist.com这是一个非常好的开源程序,用于批量发送电子邮件。

或者在商业方面看一下Interspire Email Markerer,它是一款非常光滑的产品,物有所值,而且你可以在自己的服务器上托管它。

www.interspire.com/emailmarketer/

答案 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();
?>