欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Laravel使用smtp发送邮件

程序员文章站 2022-06-16 16:37:56
...

先安装 Guzzle HTTP 库

composer require guzzlehttp/guzzle

安装成功如下:Laravel使用smtp发送邮件
配置文件是config/mail.php
邮件默认驱动是smtp
Laravel使用smtp发送邮件
在修改.env配置前需要开通163邮箱第三方调用授权密码
登录163邮箱然后点下面这里
Laravel使用smtp发送邮件

点击这里开通授权密码:
Laravel使用smtp发送邮件
下面是163的服务器地址:
Laravel使用smtp发送邮件
在.env文件修改配置如下:
Laravel使用smtp发送邮件
MAIL_DRIVER=smtp
MAIL_HOST=smtp.163.com //这个地方固定
MAIL_PORT=465 //我的是阿里云服务器这里使用465
MAIL_USERNAME=your-mail-username //发送邮件的邮箱账号
MAIL_PASSWORD=your-mail-password //发送邮件的邮箱授权密码
MAIL_ENCRYPTION=ssl



生成可邮寄类,这些类都存放在 app/Mail 目录:

php artisan make:mail OrderShipped

修改app/Mail/OrderShipped.php文件的build方法:

/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->from(‘aaa@qq.com’)
->view(‘emails.email1’);
//return $this->view(‘view.name’);
}

创建resources/views/emails/email1.blade.php,修改如下:

我发送的邮件

```

创建MailController:

php artisan make:controller MailController

修改app/Http/Controllers/MailController如下:

<?php

namespace App\Http\Controllers;

use App\Mail\OrderShipped;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Mail;

class MailController extends Controller
{
    public function send_email()
    {
        Mail::to('aaa@qq.com')->send(new OrderShipped());
    }
}

修改routes/web.php加入如下内容:

Route::get('/send_email','aaa@qq.com_email');

把代码推送到线上服务器运行。

发送成功截图如下:
Laravel使用smtp发送邮件