Maison > développement back-end > tutoriel php > Comment puis-je gérer efficacement les erreurs dans PHPMailer ?

Comment puis-je gérer efficacement les erreurs dans PHPMailer ?

Susan Sarandon
Libérer: 2024-11-28 21:35:16
original
957 Les gens l'ont consulté

How Can I Effectively Handle Errors in PHPMailer?

Gestion des erreurs dans PHPMailer

La gestion des erreurs dans PHPMailer peut être un peu déroutante, surtout si vous n'êtes pas familier avec son fonctionnement. Par défaut, PHPMailer fera écho à toutes les erreurs rencontrées directement dans le navigateur, ce qui peut interrompre toute gestion des erreurs que vous implémentez.

Pour faire taire ces messages, vous pouvez utiliser la fonctionnalité d'exceptions de PHPMailer. Par défaut, PHPMailer n'est pas configuré pour lancer des exceptions, mais vous pouvez l'activer en définissant le paramètre exceptions sur true lors de la création d'une nouvelle instance PHPMailer.

Par exemple :

$mail = new PHPMailer(true);
Copier après la connexion

Une fois que vous avez activé les exceptions, vous pouvez détecter toutes les erreurs qui se produisent à l'aide de blocs try/catch. Par exemple :

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!
}
Copier après la connexion

En gérant les exceptions, vous pouvez empêcher PHPMailer de renvoyer les messages d'erreur au navigateur et les afficher de manière plus contrôlée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal