致命错误:未捕获的异常..使用 php SwiftMailer

发布于 07-30 17:46 字数 358 浏览 5 评论 0原文

我正在使用 SwiftMailer 发送邮件,如果我尝试使用虚拟电子邮件地址,例如,如果我在电子邮件地址中输入“asdf”,我会收到此未捕获的异常。

   Fatal error: Uncaught exception 'Swift_RfcComplianceException' with message 
'Address in mailbox given [asdf] does not comply with RFC 2822,

我在面向对象方面不是很有经验..所以不知道如何处理这个问题? 实际上,我只是希望如果电子邮件地址无效,它会失败,但它不应该抛出致命错误消息。 有什么建议么?

谢谢。

I am using SwiftMailer for sending mails and if I try to use dummy email address, for example if I type in "asdf" in email address, I get this uncaught exception.

   Fatal error: Uncaught exception 'Swift_RfcComplianceException' with message 
'Address in mailbox given [asdf] does not comply with RFC 2822,

I am not very experienced in OO .. so not sure how to handle this? Actually I just want it to fail if the email address is not valid but it shouldnt throw the fatal error message. Any suggestions?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

两个我2024-08-06 17:46:22

你需要捕获异常,就像这样

try
{
    // Your code to send the email
}
catch (Swift_RfcComplianceException $e)
{
    print('Email address not valid:' . $e->getMessage());
}

这不是一个面向对象的事情,它是一个 异常 的事情。

You need to catch the exception, like this

try
{
    // Your code to send the email
}
catch (Swift_RfcComplianceException $e)
{
    print('Email address not valid:' . $e->getMessage());
}

This isn't an OO thing, it's an exceptions thing.

維他命╮2024-08-06 17:46:22

此外,您可以在发送之前验证电子邮件:

if(!Swift_Validate::email($email)){ //if email is not valid
                //do something, skip them
                $log_error->log($email);
}

Also, you can validate the email before sending it:

if(!Swift_Validate::email($email)){ //if email is not valid
                //do something, skip them
                $log_error->log($email);
}
感情洁癖2024-08-06 17:46:22

我认为这意味着给定的电子邮件地址不遵守电子邮件地址标准。

I think that it means that the given email address doesn't respect the email adressess standards.

ぃ双果2024-08-06 17:46:22

如果根据您在错误消息中看到的内容,电子邮件地址有效,请确保地址中没有前导或尾随空格。 例如。 运行修剪($电子邮件地址)。

If the email address is valid based on what you see in the error message, make sure that there are no leading or trailing spaces in the address. eg. run trim($email_address).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文