PHPMailer 中的錯誤處理
PHPMailer 中的錯誤處理可能有點令人困惑,特別是如果您不熟悉它的工作原理的話。預設情況下,PHPMailer 會將遇到的任何錯誤直接回顯給瀏覽器,這可能會破壞您實現的任何錯誤處理。
要讓這些訊息保持沉默,您可以使用 PHPMailer 的異常功能。預設情況下,PHPMailer 未配置為拋出異常,但您可以在建立新的 PHPMailer 實例時透過將Exceptions 參數設為 true 來啟用它。
例如:
$mail = new PHPMailer(true);
一旦您啟用異常後,您可以使用 try/catch 區塊捕獲發生的任何錯誤。例如:
try { $mail->AddReplyTo('[email protected]', 'First Last'); $mail->AddAddress('[email protected]', 'John Doe'); $mail->SetFrom('[email protected]', 'First Last'); $mail->AddReplyTo('[email protected]', 'First Last'); $mail->Subject = 'PHPMailer Test Subject via mail(), advanced'; $mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional - MsgHTML will create an alternate automatically $mail->MsgHTML(file_get_contents('contents.html')); $mail->AddAttachment('images/phpmailer.gif'); // attachment $mail->AddAttachment('images/phpmailer_mini.gif'); // attachment $mail->Send(); echo "Message Sent OK\n"; } catch (phpmailerException $e) { echo $e->errorMessage(); //Pretty error messages from PHPMailer } catch (Exception $e) { echo $e->getMessage(); //Boring error messages from anything else! }
透過處理異常,您可以防止 PHPMailer 將錯誤訊息回顯到瀏覽器,而是以更受控的方式顯示它們。
以上是如何有效處理PHPMailer中的錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!