一:下载 phpmailer:
安装了composer工具用户:
在phpstorm命令行下用composer执行composer require phpmailer/phpmailer
没有安装(建议安装composer,用处很大):
下载PHPMailer:https://packagist.org/packages/phpmailer/phpmailer
放在vender目录下
二:定义发邮件的方法
thinkphp5.1提供了common.php,在里面复制下面代码(需要改的内容改一下)
use PHPMailer\PHPMailer\PHPMailer;//引入邮件类
use PHPMailer\PHPMailer\Exception;//抛出异常
function mailto($to,$title,$content)
{
try {
$mail = new PHPMailer(true);
//Server settings
$mail->SMTPDebug = 2;
$mail->isSMTP();
$mail->Host = 'smtp.qq.com'; //qq邮箱的服务器地址
$mail->SMTPAuth = true;
$mail->Username = 'xxx@qq.com';//授权的qq邮箱
$mail->Password = 'xxx';//qq授权码,不是密码!!!
$mail->SMTPSecure = 'ssl';// 使用 ssl 加密方式登录
$mail->Port = 465;//smtp 服务器的远程服务器端口号
//Recipients
$mail->setFrom('xxx@qq.com', '昵称');//授权的qq邮箱(和上面一样),自己起的昵称
$mail->addAddress($to); // 传过来的收件人
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $title;//传过来的标题
$mail->Body = $content;//传过来的内容
return $mail->send();
echo 'Message has been sent';
} catch (Exception $e) {
Exception($mail->ErrorInfo);
}
}
三:在你代码中需要的地方测试一下:
mailto('xxxx.qq.com','注册账号通知','你已经在博客注册了一个账号');
温馨提示:如果不成功,注意下你测试的代码放的地方。我是在index模块下创建的控制器。
有疑问,欢迎在下面留言~~