Maison  >  Article  >  développement back-end  >  PHP utilise la classe SMTP pour implémenter un exemple de code d'envoi d'e-mails

PHP utilise la classe SMTP pour implémenter un exemple de code d'envoi d'e-mails

怪我咯
怪我咯original
2017-07-16 10:10:301784parcourir

SMTP (Simple Mail Transfer Protocol) est un protocole de transfert de courrier simple. Il s'agit d'un ensemble de règles permettant de transmettre du courrier d'une adresse source à une adresse de destination. Il contrôle la méthode de transfert des lettres. Le protocole SMTP appartient à la suite de protocoles TCP/IP, qui aide chaque ordinateur à trouver la prochaine destination lors de l'envoi ou du relais de lettres. Grâce au serveur spécifié par le protocole SMTP, l'e-mail peut être envoyé au serveur du destinataire. L'ensemble du processus ne prend que quelques minutes. Le serveur SMTP est un serveur de messagerie sortant qui suit le protocole SMTP et est utilisé pour envoyer ou relayer des e-mails sortants.

Il utilise le service de transmission de données fiable fourni par TCP pour transmettre le message électronique du serveur de messagerie de l'expéditeur au serveur de messagerie du destinataire. Comme la plupart des protocoles de couche application, SMTP a deux extrémités : un client qui s'exécute sur le serveur de messagerie de l'expéditeur et un serveur qui s'exécute sur le serveur de messagerie du destinataire. Les côtés client et serveur de SMTP s'exécutent simultanément sur chaque serveur de messagerie. Lorsqu'un serveur de messagerie envoie des messages électroniques à d'autres serveurs de messagerie, il s'exécute en tant que client SMTP.

Il existe de nombreuses similitudes entre le protocole SMTP et l'étiquette que les gens utilisent pour les interactions en face à face. Tout d'abord, le client SMTP exécuté sur l'hôte du serveur de messagerie d'envoi initie l'établissement d'une connexion TCP au port numéro 25 du serveur SMTP exécuté sur l'hôte du serveur de messagerie de réception. Si le serveur de messagerie de réception ne fonctionne pas actuellement, le client SMTP attend un certain temps avant de tenter d'établir la connexion. Le client et le serveur SMTP effectuent d'abord certaines opérations d'établissement de liaison au niveau de la couche application. Tout comme les gens se présentent avant de changer de mains, les clients et serveurs SMTP se présentent avant d'envoyer des informations. Lors de cette phase de handshake SMTP, le client SMTP indique au serveur les adresses email de l'expéditeur et du destinataire. Après s'être présenté, le client envoie un e-mail.

Cet article présente principalement comment PHP utilise la classe SMTP pour envoyer facilement des e-mails. La méthode d'envoi d'e-mails à l'aide de la classe SMTP est en fait très simple. Les amis dans le besoin peuvent s'y référer

Ce qui suit. est le code de base :

<?php
 require_once "email.class.php";
 //******************** 配置信息 ********************************
 $smtpserver = "smtp.126.com";//SMTP服务器
 $smtpserverport =25;//SMTP服务器端口
 $smtpusermail = "new2008oh@126.com";//SMTP服务器的用户邮箱
 $smtpemailto = $_POST[&#39;toemail&#39;];//发送给谁
 $smtpuser = "new2008oh";//SMTP服务器的用户帐号
 $smtppass = "您的邮箱密码";//SMTP服务器的用户密码
 $mailtitle = $_POST[&#39;title&#39;];//邮件主题
 $mailcontent = "<h1>".$_POST[&#39;content&#39;]."</h1>";//邮件内容
 $mailtype = "HTML";//邮件格式(HTML/TXT),TXT为文本邮件
 //************************ 配置信息 ****************************
 $smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
 $smtp->debug = false;//是否显示发送的调试信息
 $state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype);

 echo "<p style=&#39;width:300px; margin:36px auto;&#39;>";
 if($state==""){
 echo "对不起,邮件发送失败!请检查邮箱填写是否有误。";
 echo "<a href=&#39;index.html&#39;>点此返回</a>";
 exit();
 }
 echo "恭喜!邮件发送成功!!";
 echo "<a href=&#39;index.html&#39;>点此返回</a>";
 echo "</p>";
?>

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!

Déclaration:
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