Php Symfony swift_邮件:发送到多个地址,但每封邮件仅显示一个地址
我想向一个地址列表发送电子邮件,但我希望每个人都能收到电子邮件,并将其电子邮件地址发送到:(而不是发送列表中的其他电子邮件地址)。Php Symfony swift_邮件:发送到多个地址,但每封邮件仅显示一个地址,php,symfony,email,Php,Symfony,Email,我想向一个地址列表发送电子邮件,但我希望每个人都能收到电子邮件,并将其电子邮件地址发送到:(而不是发送列表中的其他电子邮件地址)。 我使用的是symfony和Swift邮件。我的代码目前看起来是这样的(它正在工作): 我有两个解决方案(我不喜欢任何解决方案!) 使用密件抄送()但它使我的电子邮件看起来像垃圾邮件 循环并向每个成员发送相同的电子邮件(似乎确实消耗了服务器资源) 这个循环行吗 还有更好的主意吗 循环确实是唯一的解决方案 如果你有很多收件人,你会很快被标记为垃圾邮件(并被禁止)。你会
我使用的是symfony和Swift邮件。我的代码目前看起来是这样的(它正在工作): 我有两个解决方案(我不喜欢任何解决方案!)
还有更好的主意吗 循环确实是唯一的解决方案 如果你有很多收件人,你会很快被标记为垃圾邮件(并被禁止)。你会想要通过一个专门的邮件平台(每次发送之间有一点时间),你可以自己编写代码(相当繁重的工作),或者有很多邮件平台作为服务,比如MailChimp或MailJet 这完全取决于要发送的邮件数量。每天最多100个可能还可以(尽管这是一个从我头顶算起的任意数字)。
如果超过某个阈值,并且取决于您使用的邮件服务器(例如服务器上的本地或gmail),您的IP或帐户可能会被禁止。例如,大多数电子邮件提供商每天都有邮件限制 电子邮件服务有许多发送规则,例如,它们延迟电子邮件;他们使用多个域和地址发送;他们与主要的邮件提供商(gmail,yahoo…)合作,确保他们的域名不会自动标记为垃圾邮件
基本上,如果你真的想给很多人发很多电子邮件,我真的不建议你自己发。警告太多了。那怎么办?为什么只有一个(可见)收件人的邮件看起来像垃圾邮件?“但是,仅将电子邮件地址放在密件抄送字段中,而在收件人字段中没有地址(或您自己的地址),可能会导致某些垃圾邮件过滤器将邮件标记为垃圾邮件。”密件抄送方法对密件抄送地址的数量有限制;在某些邮件服务器上,它确实有时会被标记为垃圾邮件(我刚才也尝试过)。您希望一次发送多少封邮件?每个请求大约50到100封电子邮件。谢谢您的评论。我在问题中加入了我的循环。我要设置发送之间的时间吗?这取决于要发送的邮件数量。每天最多100美元就可以了。超过某个阈值,并且取决于您使用的邮件服务器(例如服务器上的本地或gmail),您的IP或帐户可能会被禁止。例如,大多数电子邮件提供商每天都有邮件限制,我只是尝试了上面的循环:我所有的电子邮件都标记为垃圾邮件;我刚刚意识到,在我的循环中,我正在将元素$增加到…我已经更新了我的答案,以添加关于该问题的更多细节。
public function sendmail(Notification $notification, $alert){
$to = array();
foreach ($members as $member) {
$to[] = $member->getUser()->getEmail();
}
$html = $this->templating->render(
'PlatformBundle:Emails:email.html.twig',
array('alert' => $alert, 'notification' => $notification, 'user' => $this->user)
);
// Configure and send the mail
$message = \Swift_Message::newInstance()
->setSubject('an email ')
->setFrom($this->sender_email)
->setCc($this->user->getEmail())
->setTo($to)
->setBody($html, 'text/html');
$mailStatus = $this->mailer->send($message);
}
public function sendmail(Notification $notification, $alert){
$to = array();
foreach ($members as $member) {
$to[] = $member->getUser()->getEmail();
$html = $this->templating->render(
'PlatformBundle:Emails:email.html.twig',
array('alert' => $alert, 'notification' => $notification, 'user' => $this->user)
);
// Configure and send the mail
$message = \Swift_Message::newInstance()
->setSubject('an email ')
->setFrom($this->sender_email)
->setCc($this->user->getEmail())
->setTo($to)
->setBody($html, 'text/html');
$mailStatus = $this->mailer->send($message);
}