Laravel 邮箱服务使用

composer拉取组件

进入laravel项目根目录

composer require guzzlehttp/guzzle": "~5.3|~6.0

.env

 MAIL_DRIVER=smtp//开启163的smtp服务,获取到随机密码
 MAIL_HOST=smtp.163.com
 MAIL_PORT=25
 MAIL_USERNAME=18106503226@163.com//发送者邮箱
 MAIL_PASSWORD=********//密码,随机生成的
 MAIL_ENCRYPTION=null
参数解释

1.MAIL_DRIVER
laravel提供了四种种驱动,Mailgun驱动,Mandrill驱动,SES驱动,Smtp驱动,这几种都依赖我们第一步安装的guzzle,具体可以参考laravel手册。本次选择的是smtp驱动。所以mail_derver=smtp
2.MAIL_HOST
邮件传输服务器,一般免费的邮箱,如下列出的,他们的SMTP服务器就是在域名前加上smtp就行了.

smtp.163.com 
smtp.21cn.com 
smtp.sina.com.cn 
smtp.sohu.com 
smtp.126.com

3.MAIL_USERNAME PASSWORD
当你在邮箱后台设置了开通smtp,就回让你设置一个专门供第三方使用的密码,这里的密码就是这个密码,具体这是可以百度查找。
163邮箱开启smtp教程

config/mail.php

//设置驱动
'driver' => env('MAIL_DRIVER', 'smtp')
// 发送者   也可以后面通过Mail函数设置
'from' => ['address' =>'18106503226@163.com', 'name' => 'Jacklin']

Mail函数解析

Mail::send('email', $data, function ($message) use ($data) {
     $message->to('957534377@qq.com', $data['name'])->subject('你好啊');
});

1.function() use (){}
这是php闭包函数的结构,可以使用变量作为参数,在这里没有什么好说的,但是闭包函数的用法的机制类似js的机制,具体百度。
2.参数分析

Mail::send(1,2,3)

第一个参数是一个blade模板,里面可以写具体短信内容,并作样式处理
第二个参数是一个数组,传入blade模板中
第三个参数是闭包函数,使用这个闭包可以指定消息的其他属性,例如抄送、群发,等等

简单发送可以使用to方法,to方法里定义了收件人的邮箱和收件人称为,可以为空。

Route::get('test',function(){
    \Mail::send('email', [], function ($message)  {
        $message->to('361525737@qq.com', '123')->subject('主题');
    });
});

具体方法如下:

$message->from($address, $name = null);
$message->sender($address, $name = null);
$message->to($address, $name = null);
$message->cc($address, $name = null);
$message->bcc($address, $name = null);
$message->replyTo($address, $name = null);
$message->subject($subject);
$message->priority($level);
$message->attach($pathToFile, array $options = []);
// 从$data字符串追加文件...
$message->attachData($data, $name, array $options = []);
// 获取底层SwiftMailer消息实例...
$message->getSwiftMessage();

qq邮箱smtp

rkjclatrixkpbjgc
phhbkmhzattwcagd
powpjvvxhwowbhjd

本作品采用《CC 协议》,转载必须注明作者和本文链接
毛仔
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!