Lorsque vous essayez d'envoyer des e-mails à l'aide de la fonction mail() de PHP, il est crucial d'avoir un mécanisme en place pour gérer les erreurs. Si l'envoi d'un e-mail échoue, vous souhaiterez pouvoir afficher un message d'erreur à l'utilisateur.
Malheureusement, la fonction mail() elle-même ne fournit pas de message d'erreur si l'e-mail ne parvient pas à être envoyé. Cependant, en fonction de votre configuration et de votre système d'exploitation, il existe des moyens de récupérer le message d'erreur.
Si vous utilisez SMTP sous Windows, vous pouvez utiliser error_get_last() fonction pour récupérer le message d'erreur lorsque mail() renvoie false. Cependant, gardez à l’esprit que cette solution de contournement s’applique uniquement lors de l’utilisation de SMTP ; cela ne fonctionnera pas avec la fonction native mail() de PHP.
Voici un exemple d'utilisation de error_get_last() pour obtenir le message d'erreur :
$success = mail('john@example.com', 'My Subject', $message); if (!$success) { $errorMessage = error_get_last()['message']; }
Lorsque vous imprimez le message d'erreur en utilisant print_r(error_get_last()), vous verrez une description détaillée de l'erreur, y compris le type d'erreur, le message, l'emplacement du fichier et le numéro de ligne.
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!