gpt4 book ai didi

php - 如何保存 Swiftmailer 发送的所有电子邮件

转载 作者:可可西里 更新时间:2023-11-01 01:15:37 27 4
gpt4 key购买 nike

我正在构建一个 Symfony 2 网络应用程序。我的电子邮件是通过 Swiftmailer 发送的。因为在我的网络应用程序的最新版本中,我在数据库中记录了邮件程序类/函数发送的所有电子邮件以进行跟踪(查看系统是否正常工作并有一定的证据证明我的电子邮件至少已发送) ,我想在这个版本中做同样的事情。那时,我正在使用 PHPMailer,我将其包装在一个函数中以包含 PDO 调用。现在使用 Symfony 和 Swiftmailer,我想知道我如何能够轻松地将所有电子邮件记录在我的数据库中,当然还有 doctrine ORM。我想最简单的方法是每次发送电子邮件时手动记录它,但我希望它自动完成,因为我将发送大量电子邮件。我还希望我的类(class)之后像 Swiftmailer 一样灵活,所以将所有内容包装在一个“简单函数”中不是一个替代方案。

我的第一个想法是扩展 Swiftmailer 类并添加一个自定义发送方法,该方法在内部调用继承的 send() 方法。问题是,我不完全知道该类的放置位置,而且我需要通过自定义服务连接或调用它,因为内置服务使用 Swiftmailer 本身,不是吗?

除此之外,还有电子邮件可能被假脱机的问题,在这种情况下,如果电子邮件确实已发送,send() 不会给您反馈。还是我对工作方式有误解?

其他人有类似的问题/请求吗?如果有,您是如何解决的?

谢谢。

最佳答案

好的,我现在找到了一个包,Swiftmailer-logger-bundle,它解决了我的问题。 https://github.com/tweedegolf/swiftmailer-logger-bundle

对于那些有类似问题的人:看看那个包。如果不符合您的需求,它至少会说明如何使用 swiftmailer 事件。

关于php - 如何保存 Swiftmailer 发送的所有电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39674951/

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