thinkphp 利用PHPMailer三方类发送邮件
1.首先用composer下载PHPMailer,在网站根目录进入命令行输入如下命令即可
composer require phpmailer/phpmailer
2.然后创建文件Ma.php,填写如下代码
<?php
namespace app\controller;
use PHPMailer\PHPMailer\PHPMailer;
class Ma{
// 邮件发送
public function email($toemail,$content)
{
//$toemail是要发送的邮箱,$content是发送内容
$mail = new PHPMailer();
$mail->isSMTP();// 使用SMTP服务
$mail->CharSet = "utf8";// 编码格式为utf8,不设置编码的话,中文会出现乱码
$mail->Host = "smtp.qq.com";// 发送方的SMTP服务器地址
$mail->SMTPAuth = true;// 是否使用身份验证
$mail->Username = "**********@qq.com";// 发送方的QQ邮箱用户名,就是你申请QQ的SMTP服务使用的QQ邮箱
$mail->Password = "**********";// 发送方的邮箱密码,注意用QQ邮箱这里填写的是“客户端授权密码”而不是邮箱的登录密码!
$mail->SMTPSecure = "ssl";// 使用ssl协议方式
$mail->Port = 465;// QQ邮箱的ssl协议方式端口号是465/994
$mail->setFrom("**********@qq.com", "Mailer");// 设置发件人信息,如邮件格式说明中的发件人,这里会显示为Mailer(xxxx@1qq.com),Mailer是当做名字显示
$mail->addAddress($toemail, '**');// 设置收件人信息,如邮件格式说明中的收件人,这里会显示为Liang(yyyy@qq.com)
$mail->addReplyTo("**********@qq.com", "Reply");// 设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址
//$mail->addCC("xxx@qq.com");// 设置邮件抄送人,可以只写地址,上述的设置也可以只写地址(这个人也能收到邮件)
//$mail->addBCC("xxx@qq.com");// 设置秘密抄送人(这个人也能收到邮件)
//$mail->addAttachment("bug0.jpg");// 添加附件
$mail->Subject = "客户信息";// 邮件标题
$mail->Body = $content;// 邮件正文
//$mail->AltBody = "This is the plain text纯文本";// 这个是设置纯文本方式显示的正文内容,如果不支持Html方式,就会用到这个,基本无用
if (!$mail->send()) {// 发送邮件
return "验证码发送失败" . $mail->ErrorInfo;;
} else {
return '发送成功';
}
}
}3.然后在创建一个index.php文件调用上面写的PHP类
<?php
namespace app\controller;
use app\BaseController;
use think\facade\Request;
use app\controller\Ma;
class Index extends BaseController
{
public function index()
{
$a1 = Request::param();
$a3 = new Ma;
$a2 = $a3->email('**********@qq.com',$a1);
return redirect($_SERVER["HTTP_REFERER"]);
}
}至此就可以了。

