SMTP(Simple Mail Transfer Protocol)即簡單郵件傳輸協定,它是一組用於由來源地址到目的地址傳送郵件的規則,由它來控制信件的中轉方式。 SMTP協定屬於TCP/IP協定簇,它幫助每台電腦在傳送或中轉信件時找到下一個目的地。透過SMTP協定所指定的伺服器,就可以把E-mail寄到收信人的伺服器上了,整個過程只要幾分鐘。 SMTP伺服器則是遵循SMTP協定的傳送郵件伺服器,用來傳送或中轉寄出的電子郵件。
它使用由TCP提供的可靠的資料傳輸服務把郵件訊息從發信人的郵件伺服器傳送到收信人的郵件伺服器。如同大多數應用程式層協定一樣,SMTP也存在兩個 端:在寄信者的郵件伺服器上執行的客戶端和在收信人的郵件伺服器上執行的伺服器端。 SMTP的客戶端和伺服器端同時運作在每個郵件伺服器上。當一個郵件服 務器在向其他郵件伺服器發送郵件訊息時,它是作為SMTP客戶在運作。
SMTP協定與人們用於面對面互動的禮儀之間有許多相似之處。首先,執行在發送端郵件伺服器主機上的SMTP客戶,發起建立一個到運行在接收端郵件服務 器主機上的SMTP伺服器連接埠號碼25之間的TCP連線。如果接收郵件伺服器目前不在運作,SMTP客戶會等待一段時間後再嘗試建立該連線。 SMTP客戶和伺服器先執行一些應用層握手操作。就像人們在轉手東西之前往往先自我介紹那樣,SMTP客戶和伺服器也在傳送訊息之前先自我介紹一下。 在這個SMTP握手階段,SMTP客戶向伺服器分別指出寄信者和收信人的電子郵件地址。彼此自我介紹完畢之後,客戶發出郵件訊息。
這篇文章主要介紹了php利用smtp類別輕鬆實作傳送電子郵件,smtp類別傳送郵件的方法其實很簡單,需要的朋友可以參考下
以下就是核心程式碼:
<?php require_once "email.class.php"; //******************** 配置信息 ******************************** $smtpserver = "smtp.126.com";//SMTP服务器 $smtpserverport =25;//SMTP服务器端口 $smtpusermail = "new2008oh@126.com";//SMTP服务器的用户邮箱 $smtpemailto = $_POST['toemail'];//发送给谁 $smtpuser = "new2008oh";//SMTP服务器的用户帐号 $smtppass = "您的邮箱密码";//SMTP服务器的用户密码 $mailtitle = $_POST['title'];//邮件主题 $mailcontent = "<h1>".$_POST['content']."</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='width:300px; margin:36px auto;'>"; if($state==""){ echo "对不起,邮件发送失败!请检查邮箱填写是否有误。"; echo "<a href='index.html'>点此返回</a>"; exit(); } echo "恭喜!邮件发送成功!!"; echo "<a href='index.html'>点此返回</a>"; echo "</p>"; ?>
以上是php利用smtp類別實作電子郵件發送程式碼範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!