基于ThinkPHP3.2.3接入PHPMailer的邮件发送设置(附带插件下载链接)

PHP主流框架接入插件实现注册、找回密码等发送验证邮件设置


PHPMailer下载链接:http://pan.baidu.com/s/1eRWABho

提取密码:s53p


实现步骤


一:点击上方链接下载PHPMailer插件并且解压。


二:将解压后的文件夹放入ThinkPHP/Library/Vendor/中。

1.png


三:开启用作发送邮件邮箱的smtp服务。

邮箱不一样,smtp服务开启方式也会不一样,具体的开启方式请自行搜索对应邮箱的手册,这里以QQ邮箱为例

    QQ邮箱smtp服务开启步骤:登录QQ邮箱=>设置=>账户=>往下拉到 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务

5.png


四:配置配置项。

<?php
return array(
//'配置项'=>'配置值'
//配置邮件发送服务器
    'MAIL_HOST' =>'smtp.qq.com',//smtp服务器的名称
    'MAIL_SMTPAUTH' =>TRUE, //启用smtp认证
    'MAIL_USERNAME' =>'service@qq.cn',//你的邮箱名
    'MAIL_FROM' =>'service@qq.cn',//发件人地址
    'MAIL_FROMNAME'=>'isblog博客家园',//发件人姓名
    'MAIL_PASSWORD' =>'dsahndqwopweewq',//邮箱密码
    'MAIL_CHARSET' =>'utf-8',//设置邮件编码
    'MAIL_ISHTML' =>TRUE, // 是否HTML格式邮件
);

2.png


五:配置函数库。

/**
 * 邮件发送函数
 * @param $to : 
 * @param $title : 邮件主题
 * @param $content : 邮件内容
 */
    function sendMail($to, $title, $content) {
        Vendor('PHPMailer.PHPMailerAutoload');     
        $mail = new PHPMailer(); //实例化
        $mail->IsSMTP(); // 启用SMTP
        $mail->Host=C('MAIL_HOST'); 			        //smtp服务器的名称(这里以QQ邮箱为例)
        $mail->SMTPAuth = C('MAIL_SMTPAUTH'); 	                //启用smtp认证
        $mail->Username = C('MAIL_USERNAME'); 	                //你的邮箱名
        $mail->Password = C('MAIL_PASSWORD') ; 	                //邮箱密码
        $mail->From = C('MAIL_FROM'); 			        //发件人地址(也就是你的邮箱地址)
        $mail->FromName = C('MAIL_FROMNAME'); 	                //发件人姓名
        $mail->AddAddress($to,"尊敬的客户");
        $mail->WordWrap = 50; //设置每行字符长度
        $mail->IsHTML(C('MAIL_ISHTML')); 		        // 是否HTML格式邮件
        $mail->CharSet=C('MAIL_CHARSET'); 		        //设置邮件编码
        $mail->Subject =$title; //邮件主题
        $mail->Body = $content; //邮件内容
        $mail->AltBody = "这是一个纯文本的身体在非营利的HTML电子邮件客户端";     //邮件正文不支持HTML的备用显示
        $mail->Port = '465'; //邮箱服务端口
        $mail->SMTPSecure = 'ssl';		                //邮箱邮件加密方式
        return($mail->Send());
    }

3.png


六:发送邮件。

在需要发送邮件的控制层/模型层调用发送邮件的函数

$email = 'xxxxx@qq.com';                   //发送给哪个邮箱
$title = '邮件标题';                       //邮件标题
$content = '邮件的内容';                   //邮件内容,支持html格式

$re = SendMail($email,$title,$content);    //调用发送邮件函数
if(!$re){
$this -> error('邮件发送失败!');die;
}else{
$this -> success('邮件发送成功!');die;
}

7.png

点赞

发表评论