1. 程式人生 > >TP5 PHPMailer傳送郵件程式碼

TP5 PHPMailer傳送郵件程式碼

PHPMailer是一個用於傳送電子郵件的PHP函式包。直接用PHP就可以傳送,無需搭建複雜的Email服務。

  • 首先啟SMTP服務(使用PHP傳送郵件需要用到SMTP服務 以QQ郵箱為例 如圖:)
    微信圖片_20180320152956.png
  • 下載PHPMailer核心類
  • 將下載好的檔案放到application同級的vendor中(無需更改檔名直接放入即可 如圖:)
    微信圖片_20180320155828.png
  • 放入檔案後在application/common.php新增公共函式(可直接覆蓋common.php 特殊使用者請自行CTRL+C/V)

    <?php

    use phpmailer\phpmailer;

    function sendEmail($Host,$Password

    ,$Subject,$From,$FromName,$data = []) {

    Vendor('phpmailer.phpmailer');

    $mail = new PHPMailer(); //例項化

    $mail->IsSMTP(); // 啟用SMTP

    $mail->Host = 'smtp.'.$Host.'.com'; //SMTP伺服器 以126郵箱為例子

    $mail->Port = 465;  //郵件傳送埠

    $mail->SMTPAuth = true;  //啟用SMTP認證

    $mail->SMTPSecure = "ssl";  

    // 設定安全驗證方式為ssl

    $mail->CharSet = "UTF-8"; //字符集

    $mail->Encoding = "base64"; //編碼方式

    $mail->Username = $From//你的郵箱

    $mail->Password = $Password//你的密碼

    $mail->Subject = $Subject; //郵件標題 

    $mail->From = $From//發件人地址(也就是你的郵箱)

    $mail->FromName = $FromName//發件人姓名

    if($data &&

    is_array($data)){

    foreach ($data as $k=>$v){

    $mail->AddAddress($v['user_email'], "親"); //新增收件人(地址,暱稱)

    $mail->IsHTML(true); //支援html格式內容

    $mail->Body = $v['content']; //郵件主體內容

    //傳送成功就刪除

    if ($mail->Send()) {

    echo "傳送成功";

    }else{

    echo "Mailer Error: ".$mail->ErrorInfo;// 輸出錯誤資訊 

    }

    }

    }          

    }

    ?>

  • 呼叫剛才新增的公共函式
    sendEmail('郵箱型別','密碼','主題','發件人郵箱','發件人姓名',[['user_email'=>'收件人郵箱','content'=>'內容']]);
  • 加公眾號獲取更多資源