很多時候,我們都需要發送郵件給我們的會員,比如註冊啟用、活動推送等等。
在PHP中實現郵件發送的方法有很多,比如比較新的Swift Mailer 、還有PHPMailer等。在這主要介紹一下PHPMailer這一個郵件發送類。
下載
PHPMailer的GitHub地址:https://github.com/PHPMailer/PHPMailer
實現
代碼如下
php //引入類檔案 require_once 'PHPMailerAutoload.php'; //執行個體化類$mail=new PHPMailer(); //是否開始debug模式$mail->SMTPDebug =1; //這裡的數字表示提示錯誤的的類型//使用STMP服務$mail->isSMTP(); //聲明寄件者郵箱SMTP伺服器位址$mail->Host ='smtp.163.com'; //這個是163郵箱SMTP伺服器位址//開啟SMTP認證$mail->SMTPAuth =true; //發送郵箱帳號$mail->Username ='admin'; //發送郵箱密碼$mail->Password ='admin'; //注意這個密碼可能不是平時登入時所用的密碼,一般郵箱服務商為提供一個授權碼,使用時填寫這個授權碼//加密協議$mail->STMPSecure ='SSL'; //連接埠號碼$mail->Port =25; //寄件者郵箱和暱稱$mail->setFrom('from@163.com','Admin'); //接受者郵箱和暱稱$mail->addAddress('to@163.com','Customer'); //是否開啟HTML格式$mail->isHTML(true); //設定郵件的字元編碼,不然中文亂碼$mail->CharSet='UTF-8'; //郵件主題$mail->Subject ='subject'; //郵件內容$mail->Body ='body'; //郵件替代內容$mail->AltBody ='altbody'; //當郵件不支援html時備用顯示,可以省略 //郵件附件$mail->addAttachment('load.zip'); if(!$mail->send()){ echo 'Message could not be sent'; echo 'Mail Error:'.$mail->ErrorInfo; }else{ echo 'Message has been sent'; }
博主親測有效,大家可以看著代碼一步一步進行學習
這裡我指出幾個問題
- 類檔案的引入
大家從git上下載或者使用composer下載後,得到一大堆檔案,只需要引入PHPMailerAutoload.php
這個檔案即可。
- SMTP伺服器位址和連接埠號碼
一般需要我們在郵箱設定裡開啟SMTP服務。
網易的郵箱如下:
其他的郵箱大家自行百度或者Google,在此我不再贅述。
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
').text(i)); }; $numbering.fadeIn(1700); }); });
以上就介紹了 PHPMailer實現郵件發送,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。