可能大家會因為工作的需要,要給網站的用戶發送郵件,但是那麼多客戶總不能人工一份份的發,那麼就給大家帶來一個好方法,用PHP來幫你解決這個繁瑣的任務。
我之前一直使用163郵箱發送需要處理的文件,但是如果操作過於頻繁【或者有別的問題】,會導致發送失敗,相反現在用QQ的貌似還沒出現過類似情況,不過QQ信箱配置和163有一丟丟不一樣,我還是貼一下,怕朋友們踩到坑,下面話不多說了,來一起看看詳細的介紹吧。
PHPMailer的優點:
可運行在任何平台之上
支援SMTP驗證
發送郵件時指定多個收件者,抄送位址,暗送位址和回覆位址;註:新增副本、暗送僅win平台下smtp方式支援
支援多種郵件編碼包括:8bit,base64,binary和quoted-printable
支援冗餘SMTP伺服器,也就是可以指定主smtp伺服器位址也只可以指定備份smtp伺服器
支援附附件的郵件,可以為郵件新增任意格式的附件—當然得到你的伺服器有足夠大的頻寬支撐
自訂郵件頭訊息,這跟php中透過header函數發送頭資訊類似
支援將郵件正文製作成HTMl內容,那麼就可以在郵件正文中插入圖片
靈活的debug支援
經測試相容的SMTP伺服器包括:Sendmail,qmail,Postfix,Imail,Exchange等
1.下載PHPMailer
因為有蠻多版本,我這裡把我用的封裝好的版本分享出來,用其他版本的朋友可以用自己的就好
下載地址:http://xiazai.jb51.net/201711/yuanma/phpmailer(jb51.net).rar
2.放置PHPMailer
#我是在根目錄創建了名為【Plugin】的專門放各類插件的資料夾,然後直接將PHPMailer放在Plugin資料夾下
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; //开启认证 $mail->Port = 465; //网易为25 $mail->Host = "smtp.qq.com"; $mail->Username = "******"; //qq此处为邮箱前缀名 163为邮箱名 $mail->Password = "******"; $mail->AddReplyTo("******@qq.com", "******");//回复地址 $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!"; //当邮件不支持html时备用显示 $mail->WordWrap = 80; // 设置每行字符串的长度 //$mail->AddAttachment("f:/test.png"); //可以添加附件 $mail->IsHTML(true); $mail->Send(); echo '邮件已发送'; } catch (phpmailerException $e) { echo "邮件发送失败:" . $e->errorMessage(); } }
$mail->Port = 465; //网易163 25 $mail->Host = "smtp.qq.com"; $mail->Username = "**"; //qq此处为邮箱前缀名 163为邮箱名 $mail->Password = "******";
##Password網易直接輸入郵件信箱即可【有授權碼輸授權碼】,QQ請輸授權碼,發個簡訊就能產生
相信看了這些案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
相關閱讀:
php使用git部署環境#Git的一些使用案例javascript資料型別與git使用程式碼詳解以上是ThinkPHP如何企業信箱透過PHPMailer寄送郵件的詳細內容。更多資訊請關注PHP中文網其他相關文章!