PHPMailer を使用する場合、エラー処理は少し難しい場合があります。 PHPMailer はエラーをブラウザに直接表示するため、カスタム エラー処理が妨げられます。
電子メールの送信には $mail->Send() メソッドが使用されます。失敗すると、$mail->ErrorInfo プロパティが設定され、false が返されます。ただし、PHPMailer はエラー メッセージもエコーするため、エラー処理が中断される可能性があります。
解決策:
PHPMailer では、例外を使用したエラー処理が可能です。 PHPMailer コンストラクターを true に設定すると、ライブラリはエラー時に例外をスローします。その方法は次のとおりです。
require_once '../class.phpmailer.php'; $mail = new PHPMailer(true); //throws exceptions on errors try { // ... Set up the email as usual ... if ($mail->Send()) { echo "Email successful"; } } catch (phpmailerException $e) { echo $e->errorMessage(); //PHPMailer error message } catch (Exception $e) { echo $e->getMessage(); //Generic error message }
このアプローチでは、エラー処理を実際の送信プロセスから分離し、ユーザー エクスペリエンスに影響を与えることなくエラーが適切に管理されるようにします。
以上が直接ブラウザ出力を使用せずに PHPMailer エラーを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。