Maison > Article > développement back-end > Comment implémenter la fonction de réception d'e-mails via PHP ?
Comment implémenter la fonction de réception d'e-mails via PHP ?
Avec l'utilisation généralisée du courrier électronique, les reçus de courrier électronique sont devenus une exigence pour de nombreuses personnes lors de l'envoi d'e-mails. Grâce à la fonction de réception d'e-mail, nous pouvons savoir à temps si l'autre partie a reçu l'e-mail que nous avons envoyé. Cet article présentera comment implémenter la fonction de réception d'e-mails via PHP et fournira des exemples de code spécifiques.
Les principales étapes pour mettre en œuvre la fonction de réception d'e-mails sont les suivantes :
Voici un exemple simple de formulaire d'envoi d'e-mail :
<form action="send_email.php" method="post"> <label for="to">收件人:</label> <input type="email" id="to" name="to" required><br> <label for="subject">主题:</label> <input type="text" id="subject" name="subject" required><br> <label for="message">内容:</label><br> <textarea id="message" name="message" rows="4" cols="50" required></textarea><br> <input type="submit" value="发送"> </form>
Tout d’abord, nous devons utiliser la fonction de messagerie intégrée de PHP pour envoyer des e-mails. L'utilisation de base de la fonction de courrier électronique est la suivante :
mail(to, subject, message, additional_headers)
Parmi eux, to est l'adresse e-mail du destinataire, subject est le sujet de l'e-mail, message est le contenu de l'e-mail etadditional_headers sont des informations d'en-tête supplémentaires facultatives.
Voici un exemple basique d'envoi d'un e-mail :
<?php $to = $_POST['to']; $subject = $_POST['subject']; $message = $_POST['message']; $headers = "From: webmaster@example.com" . " " . "Reply-To: webmaster@example.com" . " " . "X-Mailer: PHP/" . phpversion(); if (mail($to, $subject, $message, $headers)) { echo "邮件发送成功!"; } else { echo "邮件发送失败!"; } ?>
Dans cet exemple, nous obtenons le destinataire, le sujet et le contenu du formulaire via le tableau $_POST, et utilisons la fonction mail pour envoyer l'e-mail. Dans le même temps, nous définissons également des informations supplémentaires sur l’en-tête de l’e-mail, notamment l’expéditeur et l’adresse de réponse de l’e-mail.
$headers = "Disposition-Notification-To: webmaster@example.com" . " " . "Return-Receipt-To: webmaster@example.com" . " " . "X-Confirm-Reading-To: webmaster@example.com" . " " . "X-MS-Receipt: Success";
Dans cet exemple, nous avons ajouté Disposition-Notification-To, Return-Receipt-To, X-Confirm-Reading-To et X -MS-Receipt quatre en-têtes. Lorsque le destinataire reçoit l'e-mail, il peut choisir d'envoyer ou non un e-mail de réception pour informer l'expéditeur si l'e-mail a été lu.
$email_headers = imap_rfc822_parse_headers($email_data); $disposition_notification_to = $email_headers->headers['disposition-notification-to']; $return_receipt_to = $email_headers->headers['return-receipt-to']; $x_confirm_reading_to = $email_headers->headers['x-confirm-reading-to']; $x_ms_receipt = $email_headers->headers['x-ms-receipt'];
Dans cet exemple, nous utilisons la fonction imap_rfc822_parse_headers fournie par PHP pour analyser les informations d'en-tête supplémentaires et obtenir respectivement Disposition-Notification-To et Return -The. valeurs des quatre champs Receipt-To, X-Confirm-Reading-To et X-MS-Receipt.
Après les étapes ci-dessus, nous pouvons implémenter la fonction de réception d'e-mails via PHP. Bien entendu, il ne s'agit que d'une méthode de mise en œuvre de base, et elle peut également être personnalisée et étendue en fonction des besoins réels, comme l'ajout d'un suivi des reçus, la sauvegarde des enregistrements de reçus, etc.
J'espère que cet article pourra vous aider à mettre en œuvre la fonction de réception par e-mail, merci d'avoir lu !
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!