我有以下代码使用symfony2 swift_mailer发送电子邮件
$message = \Swift_Message::newInstance()
->setSubject('tets')
->setFrom(array('request@reqa.com' => 'Test Mail'))
->addTo('test@test.com')
->addCc('test@te.com')
->addCc('test1@test1.com')
->addCc('test2@test2.com')
->setBody($html, 'text/html');
$this->get('mailer')->send($message);
我的问题是我从数据库加载addCc电子邮件地址,因此有没有任何方法可以通过分隔它们来添加CC电子邮件地址,就像这样 - > addCc( 'TEST2 @ test2.com,TEST4 @ test4.com')
由于
答案 0 :(得分:8)
直接使用setCC
(documentation)...
$message->setCc(array(
'person1@example.org',
'person2@otherdomain.org' => 'Person 2 Name',
'person3@example.org',
'person4@example.org',
'person5@example.org' => 'Person 5 Name'
));
...或遍历您的entites集合并为每个人执行addCC
。
$receipients = $this->getDoctrine()->getRepository("...")->findBy(array(".." => ".."));
foreach ($receipients as $receipient) {
$message->addCC($receipient->getMail());
}
$this->get('mailer')->send($message);
...或者如果你只有,
- 分隔的字符串,cc地址只有explode
字符串到数组。然后循环遍历数组元素或将数组直接传递给setCC
,如上所示。