本文所使用的是ThinkPHP 2.1版和 PHPMailer 5.1版。(後者建議您直接從本博下載,因為我們不能保證下面的代碼在所有版本的PHPMailer中都能正常運行)
下面是具體步驟:
第一步、添加PHPMailer類庫
點擊此處下載
將下載後的檔案解壓,將PHPMail目錄移動至ThinkPHP目錄中的Vendor內。(請確保class.phpmailer.php檔案就在ThinkPHPVendorPHPMailerclass.phpmailer.php)
第二步、添加發送郵件函數
在項目目錄中的Common檔案夾中的common.php檔案(如果沒有請建立)添加如下代碼:
複製代碼 代碼如下:
/**********
* 發送郵件 *
**********/
function SendMail($address,$title,$message)
{
vendor('PHPMailer.class#PHPMailer');
$mail=new PHPMailer();
// 設定PHPMailer使用SMTP伺服器發送Email
$mail->IsSMTP();
// 設定郵件的字元編碼,若不指定,則為'UTF-8'
$mail->CharSet='UTF-8';
// 添加收件者地址,可以多次使用來添加多個收件者
$mail->AddAddress($address);
// 設定郵件內文
$mail->Body=$message;
// 設定郵件標頭的From欄位。
$mail->From=C('MAIL_ADDRESS');
// 設定寄件者名字
$mail->FromName='LilyRecruit';
// 設定郵件標題
$mail->Subject=$title;
// 設定SMTP伺服器。
$mail->Host=C('MAIL_SMTP');
// 設定為“需要驗證”
$mail->SMTPAuth=true;
// 設定使用者名稱和密碼。
$mail->Username=C('MAIL_LOGINNAME');
$mail->Password=C('MAIL_PASSWORD');
// 發送郵件。
return($mail->Send());
}
?>
第三步、配置郵箱資訊
編輯Conf目錄下的config.php,在return array添加如下內容
複製代碼 代碼如下:
'MAIL_ADDRESS'=>'xxx@126.com', // 郵箱地址
'MAIL_SMTP'=>'smtp.126.com', // 郵箱SMTP伺服器
'MAIL_LOGINNAME'=>'xxx', // 郵箱登入帳號
'MAIL_PASSWORD'=>'xxx', // 郵箱密碼
其中的郵箱登入帳號可能需要包括@後面的內容,請自行嘗試^_^
第四步、在Action中發送郵件
由於ThinkPHP會自動載入common.php中的函數,所以在需要發送郵件的時候,只需要使用如下代碼即可。
SendMail("xxx@xxx.com","郵件標題","郵件內文");
至此,本教程已經結束。撒花~~~
歡迎成功配置的同學SendMail("dreamrunner@foxmail.com","我也會用ThinkPHP發送郵件啦","哇啦哇啦~~");
還有一些說明
如果郵件內文中需要換行怎麼辦呢?其實,最簡單的方法是——
SendMail("xxx@xxx.com","郵件標題","郵件內文
我換行啦~~!");
QQ郵箱(含foxmail)和網易的126、163都測試成功。因為近期訪問GMail比較吃力,所以沒有測試。聽說GMail要求必須使用SSL,有這方面需要的同學自行Google百度PHPMailer的方法。
http://www.bkjia.com/PHPjc/313571.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/313571.htmlTechArticle本文所使用的是ThinkPHP 2.1版和 PHPMailer 5.1版。(後者建議您直接從本博下載,因為我們不能保證下面的代碼在所有版本的PHPMailer中都能正常...