【问题标题】:Symfony merge multipe emails in oneSymfony 将多封电子邮件合二为一
【发布时间】:2017-02-21 17:05:34
【问题描述】:

我正在使用带有 swiftmailer 的 Symfony 3。

我想知道是否有一种简单的方法可以将多封电子邮件合并为一个。因此,用户取 3 封电子邮件取 1 封电子邮件,其中 3 封电子邮件合并在其中。这样我将避免向用户发送垃圾邮件。

我已经阅读了关于假脱机的信息,但假脱机不会合并,而是在一段时间后发送电子邮件,具体取决于您将使用的 cronjob。

那么有没有简单的方法或捆绑包或必须自己创建?

【问题讨论】:

  • 您的意思是使用 Swiftmailer 在To: 字段中包含多封电子邮件?

标签: symfony swiftmailer


【解决方案1】:

您想将多封电子邮件的内容放在一封电子邮件中吗?这听起来像你需要一些定制的东西。例如,您可以存储要发送但不发送的电子邮件,并运行 cronjob 以将所有待处理的内容作为一封电子邮件发送。不过,我不确定您为什么需要这个 - 也许您最好考虑一下何时以及为什么发送电子邮件。

编辑:来自 cmets 的目标是将多个通知合并到一封电子邮件中。在这种情况下,如果有一个 notifications 实体和一个 cronjob 命令,它刚刚创建了一封包含所有待处理通知的电子邮件并将其发送出去,那么它可能更容易理解(对于新看代码的人来说)。

【讨论】:

  • 目标不是向用户发送垃圾邮件,在每封电子邮件中发送每个通知,而是将他应该收到的所有通知归为一组。想象一下在门户中做各种事情并收到 10 封电子邮件,说明您做了某事。相反,我想收到一封电子邮件,列出你所做的 10 件事。这就像我认为的独白,将日志分组并在一封电子邮件中发送,而不是向您发送垃圾邮件。
  • 听起来你可以稍微改变你的逻辑,也许创建一个待处理的通知表,然后使用 cronjob 每隔几分钟发送所有待处理的通知。
【解决方案2】:

为了实现不向用户发送多封电子邮件,您不应该在这种情况下使用Swiftmailer。 您应该在数据库中创建和存储信息,而不是每次要通知时都创建电子邮件。 然后您必须执行一个命令来获取用户的所有通知并将它们放入一封电子邮件中 ​​- 为此您可以使用Swiftmailer

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-29
    • 1970-01-01
    • 2015-10-13
    • 2011-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多