SwiftMailer 中如何提取投递失败?

SwiftMailer 的文档说:


通过使用 send() 的引用参数,可以获得被传输拒绝的地址列表。当 Swift Mailer 尝试将消息发送到给定的每个地址时,如果收件人被拒绝,它将被添加到数组中。


// Pass a variable name to the send() method

if (!$mailer->send($message, $failures))

{

  echo "Failures:";

  print_r($failures);

}

但是,我看不到确定失败原因的方法。例如send返回0,$failures填充了电子邮件地址,但我想知道为什么发送失败/被拒绝。


我怎样才能做到这一点?不可能吗?快速查看源代码表明 SwiftMailercatch需要填充异常$failedRecipients,而且异常消息似乎没有保存在任何地方。我错过了什么吗?


德玛西亚99
浏览 123回答 1
1回答

侃侃无极

我认为不可能这样做。不幸的是,只能看到失败的电子邮件地址列表,而看不到这些地址失败的原因。异常被默默地吞噬\Swift_Transport_AbstractSmtpTransport::_doMailTransaction()
打开App,查看更多内容
随时随地看视频慕课网APP