Thinkphp5使用phpmailer发送邮箱:
1、开启stmp服务
在QQ邮箱中设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务中开启IMAP/SMTP服务,通过短信验证会生成
授权码,这个是发送邮件的密码。如果授权码忘记了可以点击生成授权码生成。
2、下载PHPmailer
a、使用composer安装
b、直接把phpmailer的压缩包解压,放到vendor下面
c、打开根目录下面的composer.json文件,在require一项里面添加"phpmailer/phpmailer":"^5.2"
3、配置phpmailer
为了项目修改的方便,把一些常量放到全局的config.php下面,在config.php中添加如下:
//邮箱设置
'MAIL_ADDRESS'=>'1342601735@qq.com', // 邮箱地址
'MAIL_SMTP'=>'smtp.qq.com', // 邮箱SMTP服务器
'MAIL_LOGINNAME'=>'1342601735@qq.com', // 邮箱登录帐号
'MAIL_PASSWORD'=>'', // 邮箱密码,授权码
4、common文件配置
然后在全局的common.php中写入:
//发送邮件的方法
function SendMail($address,$title,$message)
{
vendor('PHPMailer.class#PHPMailer');
$mail=new PHPMailer();
$mail->IsSMTP(); // 设置PHPMailer使用SMTP服务器发送Email
$mail->CharSet='UTF-8'; // 设置邮件的字符编码,若不指定,则为'UTF-8'
$mail->AddAddress($address); // 添加收件人地址,可以多次使用来添加多个收件人
$mail->Body=$message; // 设置邮件正文
$mail->From=config('MAIL_ADDRESS'); // 设置邮件头的From字段。
$mail->FromName='欢迎您的到来!'; // 设置发件人名字
$mail->Subject=$title; // 设置邮件标题
$mail->Host=config('MAIL_SMTP'); // 设置SMTP服务器。
$mail->SMTPAuth=true; // 设置为"需要验证" ThinkPHP 的config方法读取配置文件
$mail->Username=config('MAIL_LOGINNAME');// 设置用户名和密码。
$mail->Password=config('MAIL_PASSWORD');
return($mail->Send()); // 发送邮件。
}
5、定义发送方法
public function sendemail(){
$email="1342601735@qq.com";
$title="这是title";
$content($email,$title,$content);
}
6、通过浏览器访问该方法