|
導(dǎo)讀網(wǎng)頁的本質(zhì)就是超級文本標(biāo)記語言,通過結(jié)合使用其他的Web技術(shù)(如:腳本語言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強大的網(wǎng)頁。因而,超級文本標(biāo)記語言是萬維網(wǎng)(Web)編程的基礎(chǔ),也就是說萬維網(wǎng)是建立... 網(wǎng)頁的本質(zhì)就是超級文本標(biāo)記語言,通過結(jié)合使用其他的Web技術(shù)(如:腳本語言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強大的網(wǎng)頁。因而,超級文本標(biāo)記語言是萬維網(wǎng)(Web)編程的基礎(chǔ),也就是說萬維網(wǎng)是建立在超文本基礎(chǔ)之上的。超級文本標(biāo)記語言之所以稱為超文本標(biāo)記語言,是因為文本中包含了所謂“超級鏈接”點。 本篇文章給大家?guī)淼膬?nèi)容是關(guān)于php如何引入PHPMailer發(fā)送郵件的步驟講解(附代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。昨天做了一個發(fā)送郵件的功能,如果直接用mail()函數(shù),需要擁有自己的郵件服務(wù)器,所有引入PHPMailer類方便快捷,簡單寫一下開發(fā)步驟: 一、擁有自己的郵箱賬號(作為發(fā)件人郵箱) 分兩種情況: 1、如果是企業(yè)郵箱,需要用到的參數(shù)為郵箱號和密碼 2、如果是個人郵箱,需要用到的參數(shù)為郵箱號和授權(quán)碼(只有開啟之后才能通過PHP代碼,控制郵件的自動發(fā)送)
二、PHPMailer的下載 下載地址:https://github.com/PHPMailer/PHPMailer 我這里是用的thinkphp 5,下載后放到vendor目錄 三、封裝發(fā)送郵件方法,設(shè)置相關(guān)參數(shù) 具體代碼如下,這里我用的是企業(yè)郵箱,如果是個人郵箱,需更改以下幾個參數(shù)值: $mail->Host,$mail->Port,發(fā)件人郵箱密碼(授權(quán)碼) <?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2018/10/15 0015
* Time: 13:33
*/
namespace app\common\model;
require VENDOR_PATH . 'PHPMailer/src/Exception.php';
require VENDOR_PATH . 'PHPMailer/src/PHPMailer.php';
require VENDOR_PATH . 'PHPMailer/src/SMTP.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception ;
class Mail
{
//發(fā)件人郵箱
private static $_fromAddress = '***@medpeer.cn';
//發(fā)件人郵箱登錄密碼(非企業(yè)郵箱為授權(quán)碼)
private static $_pwd = '***';
//收件人郵箱
private static $_toAddress = '***@medpeer.cn';
/**
* 發(fā)送郵件
* @author ZZ
* @param string $fromAddress 發(fā)件人
* @param string $pwd 發(fā)件人登錄密碼
* @param string $toAddress 收件人
* @param string $title 郵件題目
* @param string $content 郵件內(nèi)容
* @return array
*/
public function sendMail($title,$content,$toAddress = '',$fromAddress = '',$pwd = ''){
if (empty($title) || empty($content)) {
return ['result' => false, 'msg' => '參數(shù)錯誤'];
}
if (empty($fromAddress)) {
$fromAddress = self::$_fromAddress;
$pwd = self::$_pwd;
}
if (empty($toAddress)) {
$toAddress = self::$_toAddress;
}
$mail = new PHPMailer();
//告訴PHPMailer使用SMTP
$mail->isSMTP();
//啟用SMTP調(diào)試
// 0 =關(guān)閉(供生產(chǎn)使用)
// 1 =客戶端消息
// 2 =客戶端和服務(wù)器消息
$mail->SMTPDebug = 2 ;
//設(shè)置郵件服務(wù)器的主機名
$mail->Host = 'smtp.exmail.qq.com';
//使用
// $ mail-> Host = gethostbyname('smtp.gmail.com');
//如果您的網(wǎng)絡(luò)不支持SMTP over IPv6
//設(shè)置SMTP端口號 - 587用于經(jīng)過身份驗證的TLS,即RFC4409 SMTP提交
$mail->Port = 465;
//設(shè)置加密系統(tǒng)使用 - ssl(不建議使用)或tls
$mail->SMTPSecure = 'ssl';
//是否使用SMTP身份驗證
$mail->SMTPAuth = true ;
//用于SMTP身份驗證的用戶名 - 使用gmail的完整電子郵件地址
$mail->Username = $fromAddress;
//用于SMTP身份驗證的密碼(企業(yè)郵箱的話為登錄密碼)
$mail->Password = $pwd;
//設(shè)置發(fā)送的郵件的編碼 可選GB2312 我喜歡utf-8 據(jù)說utf8在某些客戶端收信下會亂碼
$mail->CharSet = 'UTF-8';
//設(shè)置要從中發(fā)送消息的人員
$mail->setFrom($fromAddress,'***');
//設(shè)置備用回復(fù)地址
//$mail->addReplyTo('***@qq.com','騰訊');
//設(shè)置要將消息發(fā)送給誰
$mail->addAddress($toAddress,'***');
//設(shè)置主題行
$mail->Subject = $title;
//從外部文件中讀取HTML郵件正文,將引用的圖像轉(zhuǎn)換為嵌入式圖像
//將HTML轉(zhuǎn)換為基本的純文本替代正文
//$mail->msgHTML(file_get_contents(' contents.html '),__DIR__);
//用手動創(chuàng)建的純文本正文替換
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
$mail->Body = $content;
$result = $mail->send();
if (!$result) {
return ['result' => false, 'msg' => $mail->ErrorInfo];
} else {
return ['result' => true, 'msg' => '成功發(fā)送郵件消息'] ;
}
}
}以上就是php如何引入PHPMailer發(fā)送郵件的步驟講解(附代碼)的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章! 網(wǎng)站建設(shè)是一個廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。 |
溫馨提示:喜歡本站的話,請收藏一下本站!