具體的方法:php
下載PHPMailer類包,放入ThinkPHP的Vendor目錄,這是ThinkPHP的第三方類庫目錄html
而後在項目目錄下common文件夾下,在common.php(ThinkPHP中此文件會自動被引用,若是沒有,新建一個common.php)中新增調用發送郵件的函數:thinkphp
/********************************Email**********************************/ //郵發方法的定義 function s_mail($sendto, $title, $response) { //導入函數包的類class.phpmailer.php vendor ( "PHPMailer.class#phpmailer" ); // 參數說明(發送到的郵箱地址, 郵件主題, 郵件內容, 接受方的的姓名) //填寫要發送給管理員的郵件接受地址,請改成正確的地址 $sendto_mail = $sendto; //郵件主題 $subject = $title; //意見內容 $body = $response; //發送郵件 smtp_mail ( $sendto_mail, $subject, $body ); } //下面定義一個發送郵件的函數,已經測試經過。 //$sendto_email:郵件發送地址 //$subject:郵件主題 //$body:郵件正文內容 //$sendto_name郵件接受方的姓名,發送方起的名字。通常可省。 function smtp_mail($sendto_email, $subject = null, $body = null, $sendto_name = null) { //新建一個郵件發送類對象 $mail = new PHPMailer (); // send via SMTP $mail->IsSMTP (); // SMTP 郵件服務器地址,這裏須要替換爲發送郵件的郵箱所在的郵件服務器地址 $mail->Host = "smtp.qq.com"; //郵件服務器驗證開 $mail->SMTPAuth = true; // SMTP服務器上此郵箱的用戶名,有的只須要@前面的部分,有的須要全名。請替換爲正確的郵箱用戶名 $mail->Username = "xxxx@qq.com"; // SMTP服務器上該郵箱的密碼,請替換爲正確的密碼 $mail->Password = "xxxx"; // SMTP服務器上發送此郵件的郵箱,請替換爲正確的郵箱 ,與$mail->Username 的值是對應的。 $mail->From = "xxxx@qq.com"; // 真實發件人的姓名等信息,這裏根據須要填寫 $mail->FromName = "[".date('Y-m-d H:i:s',time ())."]需求系統郵件"; // 這裏指定字符集! $mail->CharSet = "utf-8"; $mail->Encoding = base64; // 收件人郵箱和姓名 $mail->AddAddress ( $sendto_email, $sendto_name ); //這一項根據須要而設 $mail->AddReplyTo ( 'xxxx@qq.com', "admin" ); // set word wrap //$mail->WordWrap = 50; // 附件處理 //$mail->AddAttachment("/var/tmp/file.tar.gz"); //$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); // 發送 HTML郵件 $mail->IsHTML ( false ); // 郵件主題 $mail->Subject = $subject; // 郵件內容 $mail->Body = $body; $mail->AltBody = "text/html"; if (! $mail->Send ()) { return 0; } else { return 1; } }
而後再Action中直接調用函數s_mail($sendto, $title, $response)便可服務器