前言
我之前一直使用163郵箱發(fā)送需要處理的文件,但是如果操作過(guò)于頻繁【或者有別的問(wèn)題】,會(huì)導(dǎo)致發(fā)送失敗,相反現(xiàn)在用qq的貌似還沒(méi)出現(xiàn)過(guò)類(lèi)似情況,不過(guò)qq郵箱配置和163有一丟丟不一樣,我還是貼一下,怕朋友們踩到坑,下面話(huà)不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。
phpmailer的優(yōu)點(diǎn):
- 可運(yùn)行在任何平臺(tái)之上
- 支持smtp驗(yàn)證
- 發(fā)送郵時(shí)指定多個(gè)收件人,抄送地址,暗送地址和回復(fù)地址;注:添加抄送、暗送僅win平臺(tái)下smtp方式支持
- 支持多種郵件編碼包括:8bit,base64,binary和quoted-printable
- 支持冗余smtp服務(wù)器,即可以指定主smtp服務(wù)器地址也只可以指定備份smtp服務(wù)器
- 支持帶附件的郵件,可以為郵件添加任意格式的附件—當(dāng)然得你的服務(wù)器有足夠大的帶寬支撐
- 自定義郵件頭信息,這跟php中通過(guò)header函數(shù)發(fā)送頭信息類(lèi)似
- 支持將郵件正文制作成html內(nèi)容,那么就可以在郵件正文中插入圖
- 片
- 靈活的debug支持
- 經(jīng)測(cè)試兼容的smtp服務(wù)器包括:sendmail,qmail,postfix,imail,exchange等
1.下載phpmailer
因?yàn)橛行U多版本,我這里把我用的封裝好的版本分享出來(lái),用其他版本的朋友可以用自己的就好
2.放置phpmailer
我是在根目錄創(chuàng)建了名為【plugin】的專(zhuān)門(mén)放各類(lèi)插件的文件夾,然后直接將phpmailer放在plugin文件夾下
3.美滋滋地?cái)]碼吧
我將我這邊的碼放上來(lái),大家可以根據(jù)需要修改
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
function sendmail( $to , $title , $content ){ require ( './plugin/phpmailer/class.phpmailer.php' ); try { $mail = new \phpmailer(true); $mail ->issmtp(); $mail ->smtpsecure = 'ssl' ; $mail ->charset = 'utf-8' ; $mail ->smtpauth = true; //開(kāi)啟認(rèn)證 $mail ->port = 465; //網(wǎng)易為25 $mail ->host = "smtp.qq.com" ; $mail ->username = "******" ; //qq此處為郵箱前綴名 163為郵箱名 $mail ->password = "******" ; $mail ->addreplyto( "******@qq.com" , "******" ); //回復(fù)地址 $mail ->from = "******@qq.com" ; $mail ->fromname = '******' ; $mail ->addaddress( $to ); $mail ->subject = $title ; $mail ->body = $content ; $mail ->altbody = "to view the message, please use an html compatible email viewer!" ; //當(dāng)郵件不支持html時(shí)備用顯示 $mail ->wordwrap = 80; // 設(shè)置每行字符串的長(zhǎng)度 //$mail->addattachment("f:/test.png"); //可以添加附件 $mail ->ishtml(true); $mail ->send(); echo '郵件已發(fā)送' ; } catch (phpmailerexception $e ) { echo "郵件發(fā)送失敗:" . $e ->errormessage(); } } |
直接將上述代碼更改復(fù)制進(jìn)你的控制機(jī)即可
需要注意的地方:
1
2
3
4
|
$mail ->port = 465; //網(wǎng)易163 25 $mail ->host = "smtp.qq.com" ; $mail ->username = "**" ; //qq此處為郵箱前綴名 163為郵箱名 $mail ->password = "******" ; |
這一塊,網(wǎng)易的port為25
username的話(huà),網(wǎng)易直接使用郵箱名即可,qq郵箱請(qǐng)輸入郵箱前綴【用戶(hù)名】『[email protected] 請(qǐng)輸入1214982635』
password網(wǎng)易直接輸入郵箱密碼即可【有授權(quán)碼輸授權(quán)碼】,qq請(qǐng)輸授權(quán)碼,發(fā)個(gè)短信就能生成
至此已經(jīng)可以發(fā)送郵件了,附上兩個(gè)郵箱互相發(fā)送成功的截圖
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)服務(wù)器之家的支持。
原文鏈接:https://segmentfault.com/a/1190000012130611