批量电子邮件发送自定义内容

时间:2010-11-29 13:00:43

标签: php email swiftmailer

我想使用SwiftMailer发送批量邮件,但只是想知道最好的选择是什么。问题是电子邮件内容需要自定义,即顶部会有一个称呼,以及一个自定义链接。

这是我目前的OOP代码:

foreach($suppliers as $supplier)
{
    $quote=new Quote();
    $quote->enquiry_id=$enquiry->id;
    $quote->supplier_id=$supplier->id;

    if($quote->save())
    {
        $supplier_emails[]=$supplier->email;
    }
}

$message=new SwiftMailMessage;
$message->setTo($supplier_emails);
$message->setFrom($params['adminEmailFromAddress'] => $params['adminEmailFromName']);
$message->setBody('Here is the message itself')
App::app()->mail->batchSend($message);

我正在使用SwiftMailer的容器。如您所见,我可以轻松指定一组电子邮件地址来发送邮件。我现在如何自定义内容?我需要在内容中包含的变量是$ supplier-> name和$ supplier-> link。

除了在foreach()循环中单独发送每封电子邮件之外,我个人无法看到如何做到这一点。如果是这种情况,那么仅使用内部PHP mail()函数是不是更好?

1 个答案:

答案 0 :(得分:1)

您可以尝试使用Decorator插件:

http://swiftmailer.org/docs/decorator-plugin