gpt4 book ai didi

php - Symfony swift_mail : send to multiple address but only display one address per email

转载 作者:搜寻专家 更新时间:2023-10-31 21:06:26 24 4
gpt4 key购买 nike

我想向地址列表发送电子邮件,但我希望每个人都收到包含他的电子邮件地址的电子邮件:(而不是扩散列表中的其他电子邮件地址)。
我正在使用 symfony 和 Swift 邮件。我的代码目前看起来像这样(它正在运行):

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);
}

我有 2 个解决方案(我不喜欢其中任何一个!)。

  1. 使用密件抄送 ( Sending to multiple Email addresses but displaying only one C# ) 但它使我的电子邮件看起来像垃圾邮件

  2. 循环并向每个成员发送相同的电子邮件(似乎真的很消耗服务器资源)

    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);
    }

这个循环可以吗?

有更好的主意吗?

最佳答案

循环确实是唯一的解决方案。

如果您有很多收件人,您将很快被标记为垃圾邮件(并被禁止)。你会想要通过一个专用的邮件平台(每次发送之间有一点时间),你可以自己编写代码(相当繁重的工作),或者有许多邮件平台作为服务,例如 MailChimp 或 MailJet。

这完全取决于要发送的邮件数量。每天最多大约 100 个可能没问题(尽管这是我脑海中的任意数字)。
超过某个阈值,并且取决于您使用的邮件服务器(例如本地服务器或 gmail),您的 IP 或帐户可能会被禁止。例如,大多数电子邮件提供商都有每天的邮件限制。

电子邮件服务有很多发送规则,例如,它们延迟电子邮件;他们使用多个域和地址发送;他们与主要邮件提供商(gmail、yahoo...)合作,以确保他们的域不会自动标记为垃圾邮件...

基本上,如果你真的想给很多人发很多邮件,我真的不建议你自己动手。有太多的警告。

关于php - Symfony swift_mail : send to multiple address but only display one address per email,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31680991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com