1 /** 2 * 下訂單發送郵件 3 * @to 收件人 @title 標題 @content 內容 4 */ 5 function sendMail($to,$title,$content){ 7 //引入PHPMailer的核心文件 使用require_once包含避免出現PHPMailer類重復定義的警告 8 require_once("../../includes/phpmailer/5.1/class.phpmailer.php"); 9 require_once("../../includes/phpmailer/5.1/class.smtp.php"); 10 //實例化PHPMailer核心類 11 $mail = new PHPMailer(); 12 //是否啟用smtp的debug進行調試 開發環境建議開啟 生產環境注釋掉即可 默認關閉debug調試模式 13 $mail->SMTPDebug = 1; 14 //使用smtp鑒權方式發送郵件 15 $mail->isSMTP(); 16 //設置使用ssl加密方式登錄鑒權 17 $mail->SMTPSecure = 'ssl'; 18 //smtp需要鑒權 這個必須是true 19 $mail->SMTPAuth = true; 20 //鏈接qq域名郵箱的服務器地址 21 //$mail->Host = 'smtp.qq.com'; 22 $mail->Host = 'smtp.exmail.qq.com';25 //設置ssl連接smtp服務器的遠程服務器端口號,以前的默認是25,但是現在新的好像已經不可用了 可選465或587 26 $mail->Port = 465; 27 //設置smtp的helo消息頭 這個可有可無 內容任意 28 // $mail->Helo = 'Hello smtp.qq.com Server'; 29 //設置發件人的主機域 可有可無 默認為localhost 內容任意,建議使用你的域名 30 $mail->Hostname = 'localhost'; 31 //設置發送的郵件的編碼 可選GB2312 我喜歡utf-8 據說utf8在某些客戶端收信下會亂碼 32 $mail->CharSet = 'UTF-8'; 33 //設置發件人姓名(昵稱) 任意內容,顯示在收件人郵件的發件人郵箱地址前的發件人姓名 34 $mail->FromName = '唐人放新買'; 35 //smtp登錄的賬號 這里填入字符串格式的qq號即可 36 $mail->Username = '123456'; 37 //smtp登錄的密碼 使用生成的授權碼(就剛才叫你保存的最新的授權碼) 38 $mail->Password = '20170425'; 39 //設置發件人郵箱地址 這里填入上述提到的“發件人郵箱” 40 $mail->From = '123456@qq.com'; 41 //郵件正文是否為html編碼 注意此處是一個方法 不再是屬性 true或false 42 $mail->isHTML(true); 43 //設置收件人郵箱地址 該方法有兩個參數 第一個參數為收件人郵箱地址 第二參數為給該地址設置的昵稱 不同的郵箱系統會自動進行處理變動 這里第二個參數的意義不大 44 $mail->addAddress($to, ''); 45 //添加多個收件人 則多次調用方法即可 46 $mail->addAddress('12345@qq.com',''); 47 $mail->addAddress('1234567@qq.com',''); 48 $mail->addAddress('12345678@qq.com',''); 49 $mail->addAddress('12345679@qq.com',''); 50 //添加該郵件的主題 51 $mail->Subject = $title; 52 //添加郵件正文 上方將isHTML設置成了true,則可以是完整的html字符串 如:使用file_get_contents函數讀取本地的html文件 53 $mail->Body = $content; 54 //為該郵件添加附件 該方法也有兩個參數 第一個參數為附件存放的目錄(相對目錄、或絕對目錄均可) 第二參數為在郵件附件中該附件的名稱 55 // $mail->addAttachment('./d.jpg','mm.jpg'); 56 //同樣該方法可以多次調用 上傳多個附件 57 // $mail->addAttachment('./Jlib-1.1.0.js','Jlib.js'); 58 $mail->send(); 59 //簡單的判斷與提示信息 60 if ($status) { 61 return true; 62 } else { 63 return false; 64 } 65 } 66 67
1 //調用方法發送郵件 2 $this->sendMail('12345@qq.com','您有新的訂單',"管理員,您有新的在線支付訂單等待處理,訂單號為".$order_sn);