2015-08-27 51 views
0

我通过cakephp和邮戳发送电子邮件时遇到了一个奇怪的问题。cakephp发送带有动态内容的批量电子邮件

我在我的cakephp应用程序中安装了postmark-cakephp library。我可以向单个用户发送电子邮件,并能够向具有相同电子邮件内容(消息)的多个用户发送电子邮件,但在这里我的要求是我需要通过一些动态电子邮件内容向多个用户发送电子邮件。 (包含用户ID)

我可以在for循环中执行此操作,但我希望通过一次调用发送包含动态内容的批处理电子邮件。

这里是我的代码

foreach($send as $client) { 
    //if client contains emails, send email 
    if(!empty($client['Email'])) { 
     //loop through emails 
     foreach($client['Email'] as $to) { 
     $client['message'] .= 'To be removed visit http://something.com/remove/'.$to."\n"; 
     $client['message'] .= $message_footer; 
     $email_to = new CakeEmail(); 
     $email_to->config('postmark'); 
     $email_to->from('[email protected]'); 
     $email_to->to($to); 
     $email_to->subject($subject); 
     $email_to->send($client['message']); 
    } 
} 

}

请帮助我。

+0

好吧,我明白,但你到目前为止做了什么?代码在哪里? – Fury

+0

我用我的示例代码更新了查询。请检查一下。 – Buddy

+1

我不知道你希望如何在不存在某种循环的情况下发送带有_different_内容的多个电子邮件。这个解决方案似乎很明显,在一个方法中“我可以在for循环中做到这一点”,并称它实现了“我想通过一次调用发送带有动态内容的批量电子邮件”。 – AD7six

回答

0

邮戳有一个“batch”API功能,但它看起来不像它在您使用的CakePHP库中受支持。有一个official Postmark library其中应该与Cake一起工作,但你可能需要做一点整合。该库支持批处理API,因此您可以为单个用户构建所有动态消息并在一次API调用中发送它们。