當前位置:名人名言大全網 - 端午節短信 - 如何在thinkphp3.1中發送郵件?

如何在thinkphp3.1中發送郵件?

ThinkPHP郵件發送功能方法

/**

*系統郵件發送功能

* @ param string $發送到接收方的郵箱。

* @param string $name收件人的姓名

* @param string $subject電子郵件主題

* @param string $body電子郵件內容

* @param string $attachment附件列表

* @return布爾值

*/

函數think _ send _ mail($ to,$name,$ subject =‘‘,$ body =‘‘,$ attachment = null ){

$ config = C(‘THINK _ EMAIL‘);

供應商(‘PHP mailer . class # PHP mailer‘);//從phpmailer目錄導入class.PHPMailer.php文件。

$ mail = new PHP mailer();//PHPMailer對象

$ mail-& gt;CharSet =‘UTF-8‘;//設置郵件代碼,默認為ISO-8859-1。如果發送中文,必須設置此項,否則會出現亂碼。

$ mail-& gt;ISS MTP();//設置SMTP服務。

$ mail-& gt;SMTPDebug = 0;//關閉SMTP調試。

// 1 =錯誤和消息

// 2 =僅消息

$ mail-& gt;SMTPAuth = true//啟用SMTP身份驗證。

$ mail-& gt;SMTPSecure =‘SSL‘;//使用安全協議

$ mail-& gt;HOST = $ config【‘SMTP _ HOST‘】;// SMTP服務器

$ mail-& gt;PORT = $ config【‘SMTP _ PORT‘】;SMTP服務器的端口號

$ mail-& gt;username = $ config【‘SMTP _ USER‘】;// SMTP服務器用戶名

$ mail-& gt;password = $ config【‘SMTP _ PASS‘】;// SMTP服務器密碼

$ mail-& gt;set FROM($ config【‘FROM _ EMAIL‘】,$ config【‘FROM _ NAME‘】);

$ REPLY EMAIL = $ config【‘回復電子郵件‘】?$ config【‘REPLY _ EMAIL‘】:$ config【‘FROM _ EMAIL‘】;

$ REPLY NAME = $ config【‘REPLY _ NAME‘】?$ config【‘REPLY _ NAME‘】:$ config【‘FROM _ NAME‘】;

$ mail-& gt;AddReplyTo($ reply email,$ reply name);

$ mail-& gt;Subject = $ subject

$ mail-& gt;MsgHTML($ body);

$ mail-& gt;AddAddress($ to,$ name);

if(is _ array($ attachment)){//添加附件。

foreach($ attachment as $ file ){

is _ file($ file)& amp;& amp$ mail-& gt;add attachment($ file);

}

}

返回$ mail-& gt;Send()?true:$ mail-& gt;ErrorInfo

該功能只能在ThinkPHP中使用,需要phpmailer擴展的支持;

phpmailer擴展的位置目錄是thinkphp/extend/vendor/PHP mailer/class . PHP mailer . PHP。

phpmail的下載地址:

/a/Apache-extras . org/p/PHP mailer

要使用此功能,您必須將以下配置項添加到項目中。

//郵件配置

THINK _ EMAIL‘= & gt;數組(

SMTP _ HOST‘= & gt;‘SMTP . AAA . com‘,//SMTP服務器

SMTP _ PORT‘= & gt;‘465‘,//SMTP服務器端口

SMTP _ USER‘= & gt;Mail @ aaa.com,//SMTP服務器用戶名

SMTP _ PASS‘= & gt;‘password‘,//SMTP服務器密碼

‘FROM _ EMAIL‘= & gt;Mail @ aaa.com,//發件人的電子郵件

FROM _ NAME‘= & gt;ThinkPHP,//發件人姓名

回復電子郵件‘= & gt;,//回復電子郵件(留空為發件人的電子郵件)

REPLY _ NAME‘= & gt;,//回復名稱(如果留空,則為發件人的名稱)

),