Laravel 发送邮件 SwiftMailer 以qq邮箱为例

1 开通smtp生成的授权码

2 配置

configmail.php

 配置你发件邮箱

.env

MAIL_DRIVER=smtp  //因为laravel其他邮件发送方式要么有数量限制要么收费,所以在这里还是选smtp发送
MAIL_HOST=smtp.qq.com
MAIL_PORT=465    //与下面ssl方式要保持一致
MAIL_USERNAME=xxxx  //qq邮箱地址
MAIL_PASSWORD=xxxxxxxxxxx     //这里不是qq密码,是qq邮箱中,开启smtp服务后生成的授权码
MAIL_FROM_ADDRESS=xxxx@qq.com  //qq邮箱地址,需要和MAIL_USERNAME一致
MAIL_FROM_NAME=xxxx  //发件人名
MAIL_ENCRYPTION=ssl  //发送方式,使用的是ssl加密发送//
MAIL_MAILER=smtp
MAIL_HOST=smtp.qq.com
MAIL_PORT=465
MAIL_USERNAME=88888888@qq.com
MAIL_PASSWORD=ufhjmrjbzprjcagi
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=88888888@qq.com
MAIL_FROM_NAME="${APP_NAME}"

3 发送

3.1 Mail::row() 发送纯文本格式

use Mail;
    public function mail()
    {
        Mail::raw('邮件内容 测试',function ($message){
            $message->from('888888888@qq.com','ttt');
            $message->subject('邮件主题 测试');
            $message->to('777777777@qq.com');
        });
    }

 3.2 Mail:send() 发送html格式

appHttpControllersStudentController.php

use Mail;
    public function mail()
    {
        Mail::send('student.mail',['name'=>'ttt'],function ($message){
            $message->to('7777777777@qq.com')->subject('邮件主题 测试2');
        });
    }

esourcesviewsstudentmail.blade.php

<h1>Hello {{ $name  }} </h1>

 如果不成功 可以试试

php artisan cache:clear

php artisan config:clear

原文地址:https://www.cnblogs.com/polax/p/13394153.html