Я пытаюсь поймать, когда сообщение электронной почты не удается, поэтому я могу сохранить необходимые данные в моей базе данных, и я могу попытаться отправить их позже.
Я думал, что следующее должно работать так же, как при использовании save()
if ( $email->send() ) { //..success - works.. } else { //..fail - never gets here, stack trace }
очевидно, вы не находитесь в режиме отладки. если бы вы были, вы бы увидели, что это действительно вызывает исключение.
и вы ловите там, только не исключение бросили 🙂
попробуй это:
try { $success = $email->send(); ... } catch (SocketException $e) { // Exception would be too generic, so use SocketException here $errorMessage = $e->getMessage(); ... }
таким образом вы можете поймать исключение и сделать здесь.