1. 程式人生 > >PHP利用PHPmailer封裝包傳送郵件

PHP利用PHPmailer封裝包傳送郵件

1、github上下載PHPmailer檔案https://github.com/PHPMailer/PHPMailer解壓縮,將src下PHPMailer、Exception和SMTP檔案複製到相應位置,更改裡面的名稱空間,然後編寫傳送郵件的程式碼

2、$mail = new PHPMailer();//例項化PHPMailer核心類
//     $mail->SMTPDebug = 1;//是否啟用smtp的debug進行除錯 開發環境建議開啟 生產環境註釋掉即可 預設關閉debug除錯模式
    $mail->isSMTP();//使用smtp鑑權方式傳送郵件
    $mail->SMTPAuth=true;//smtp需要鑑權 這個必須是true
    $mail->Host = 'smtp.qq.com';//連結qq域名郵箱的伺服器地址
    $mail->SMTPSecure = 'ssl';//設定使用ssl加密方式登入鑑權
    $mail->Port = 465;//設定ssl連線smtp伺服器的遠端伺服器埠號,以前的預設是25,但是現在新的好像已經不可用了 可選465或587
    $mail->CharSet = 'UTF-8';//設定傳送的郵件的編碼 可選GB2312 我喜歡utf-8 據說utf8在某些客戶端收信下會亂碼
    $mail->FromName = '****@qq.com';//設定發件人姓名(暱稱) 任意內容,顯示在收件人郵件的發件人郵箱地址前的發件人姓名
    $mail->Username ='*******@qq.com';//smtp登入的賬號 這裡填入字串格式的qq號即可
    $mail->Password = '*************';//smtp登入的密碼 使用生成的授權碼(就剛才叫你儲存的最新的授權碼)【非常重要:在網頁上登陸郵箱後在設定中去獲取此授權碼】
    $mail->From = '***********@qq.com';//設定發件人郵箱地址 這裡填入上述提到的“發件人郵箱”
    $mail->isHTML(true);//郵件正文是否為html編碼 注意此處是一個方法 不再是屬性 true或false
    $mail->addAddress($to);//設定收件人郵箱地址
    $mail->Subject = $title;//新增該郵件的主題
    $mail->Body = $content;//新增郵件正文 上方將isHTML設定成了true,則可以是完整的html字串 如:使用file_get_contents函式讀取本地的html檔案

* 用phpmailer傳送郵件時 ,傳送失敗 , 因為使用了SSL驗證,出現了“Extension missing: openssl”的錯誤 
解決方案: 在php.ini 裡 開啟 extension=php_openssl.dll