laravel Mail发送邮件使用方法

本文介绍了如何在Laravel项目中配置163邮箱SMTP服务,包括环境变量设置、创建控制器和路由,以及使用Postman发送请求以测试邮件发送功能。
摘要由CSDN通过智能技术生成

163邮箱获取邮箱授权码:

配置config/mail.php

'from' => [
        'address' => env('MAIL_FROM_ADDRESS', 'xxx@163.com'),
        'name' => env('MAIL_FROM_NAME', '前途有限公司'),
    ],

配置.env

# 驱动名称
MAIL_DRIVER=smtp
# 服务地址,163的为smtp.163.com
MAIL_HOST=smtp.163.com
# 服务端口,163的默认25
MAIL_PORT=25
# 发件人
MAIL_USERNAME=xxx@163.com
# 发件地址
MAIL_FROM_ADDRESS=xxx@163.com
# 发件邮箱授权码(前提准备的“客户端授权密码”)
MAIL_PASSWORD=xxx
# 发件人姓名,如果包含特殊字符可以用双引号括起来
MAIL_FROM_NAME=前途有限公司
# 加密/协议,这里 null即使用 mail.php里面的默认配置 tls
MAIL_ENCRYPTION=null

创建发送邮件控制器:

php artisan make:controller MailController
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use Illuminate\Support\Facades\Mail;

class MailController extends Controller
{
    // 发送邮件
    public function send(Request $request) {
        // 收件人邮箱
        $toEmail = $request->input('toEmail');
        // 邮件主题
        $theme = $request->input('theme');
        // 邮件正文
        $mainText = $request->input('mainText');
        
        Mail::send('emails', ['mainText' => $mainText], function($message) use ($toEmail, $theme) {
            $message->to($toEmail)->subject($theme);
        });

        // 获取发送失败的邮箱列表
        $failures = Mail::failures();
        if(count($failures) > 0) {
            // 邮件发送失败
            return '邮件发送失败:' . implode(', ', $failures);
        } else {
            // 邮件发送成功
            return '邮件发送成功';
        }
    } 

}

创建web.php路由:

// 发送邮件
Route::any('mail/send','MailController@send');       

创建自定义正文数据视图,在emails写的内容都会显示到邮件正文中

$ php artisan make:view emails
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <p>{{$mainText}}</p>
</body>
</html>

效果图:使用Postman发送请求,163邮箱发送到QQ邮箱

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZiWie丶ZHANG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值