2

我试图捕捉电子邮件失败的时间,以便我可以将所需的数据保存在我的数据库中,然后我可以尝试在以后发送。

我认为以下内容应该像使用时一样工作save()

        if ( $email->send() ) {
            //..success - works..
        } else {
            //..fail - never gets here, stack trace
        }

http://i.imgur.com/xY8rq.png

4

1 回答 1

2

显然你在那里没有处于调试模式。如果你是,你会看到这实际上引发了异常。

并且您正在那里捕获某物,而不是抛出异常:)

尝试这个:

try {
    $success = $email->send();
    ...
} catch (SocketException $e) { // Exception would be too generic, so use SocketException here
    $errorMessage = $e->getMessage();
    ...
}

这样你就可以捕获异常并在这里做某事。

于 2012-12-27T12:01:51.090 回答