Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用自定义内容批量发送电子邮件_Php_Email_Swiftmailer - Fatal编程技术网

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

Php 使用自定义内容批量发送电子邮件,php,email,swiftmailer,Php,Email,Swiftmailer,我想用SwiftMailer发送批量邮件,但我只是想知道最好的选择是什么。问题是电子邮件内容需要定制,即顶部会有一个问候语和一个定制链接 以下是我当前的OOP代码: foreach($suppliers as $supplier) { $quote=new Quote(); $quote->enquiry_id=$enquiry->id; $quote->supplier_id=$supplier->id; if($quote->s

我想用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);
我用的是一个集装箱。如你所见,我可以很容易地指定一个电子邮件地址数组来发送消息。现在如何自定义内容?我需要包含在内容中的变量是$supplier->name和$supplier->link


就我个人而言,除了在foreach()循环中单独发送每封电子邮件之外,我看不出如何做到这一点。如果是这样,那么只使用内部PHP mail()函数不是更好吗?

您可以尝试使用Decorator插件:


您可以尝试使用Decorator插件:


有意思,我没看到。我可能会试一试,但我注意到作者在网站上写道:“虽然decorator插件提供了解决这个问题的方法,但有多种方法可以解决这个问题,而不需要插件。”-对此有什么建议吗?对我来说,这似乎是最简单的解决方案。您甚至可以为它提供自己的替换查找功能。有趣的是,我没有看到。我可能会试一试,但我注意到作者在网站上写道:“虽然decorator插件提供了解决这个问题的方法,但有多种方法可以解决这个问题,而不需要插件。”-对此有什么建议吗?对我来说,这似乎是最简单的解决方案。您甚至可以为它提供自己的替换查找功能。