PHP使用laravel邮件服务发送邮件
作者:小信啊啊 发布时间:2023-05-25 03:48:23
标签:PHP,laravel,发送,邮件
配置
Laravel 的邮件服务可以通过 config/mail.php 配置文件进行配置。
邮件中的每一项都在配置文件中有单独的配置项,甚至是独有的「传输方式」,允许你的应用使用不同的邮件服务发送邮件
'mailers' => [
'smtp' => [
'transport' => 'smtp',
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'timeout' => null,
'local_domain' => env('MAIL_EHLO_DOMAIN'),
],
]
生成 Mailables
在构建 Laravel 应用程序时,应用程序发送的每种类型的电子邮件都表示为一个 mailable 类。 这些类存储在 app/Mail 目录中
php artisan make:mail OrderShipped
编写 Mailables
所有可邮寄类的配置都是在 build 方法中完成的。 在此方法中,可以调用各种方法,例如 from、subject、view 和 attach 来配置电子邮件的呈现和传递。
配置发件人
from 方法
首先,让我们浏览一下邮件的发件人的配置。或者,换句话说,邮件来自谁。有两种方法配置发件人。第一种,你可以在 mailable 类的 build 方法中使用 from 方法:
public function build()
{
return $this->from(env('MAIL_USERNAME'),env('MAIL_FROM_ADDRESS'))
->view('emails.shipped');
}
配置视图
可以在 mailable 类的 build 方法中使用 view 方法来指定在渲染邮件内容时要使用的模板。由于每封邮件通常使用 Blade 模板 来渲染其内容,因此在构建邮件 HTML 内容时你可以使用 Blade 模板引擎提供的所有功能及享受其带来的便利性
邮件模板一般存放于resources/views/emails下面
还可以配置视图变量,直接在视图模板中使用
在Mailables类中的构造方法中可以配置视图数据
/**
* @var User
*/
public $user;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($user)
{
$this->user = $user;
}
在调用发送时
$user = User::all();
Mail::to('xxx@qq.com')->send(new OrderShipped($user));
视图
<h2>测试邮箱发送</h2>
<p>{{$user[0]['email']}}</p>
好的,到这一步就可以发送成功了
其实还可以使用with使用变量
public function build()
{
return $this->from(env('MAIL_USERNAME'),env('MAIL_FROM_ADDRESS'))
->with([
'name' => '测试变量',
'time' => date('Y-m-d H:i:s')
])
->view('emails.shipped');
}
视图
<h2>测试邮箱发送</h2>
名字:<p>{{$name}}</p>
发送时间<p>{{$time}}</p>
邮箱:<p>{{$user[0]['email']}}</p>
来源:https://blog.csdn.net/csdn876280441/article/details/129329555


猜你喜欢
- 前言在使用vue过程中,总会用到这样哪样的UI框架,在install这些框架时,往往还需要安装其要求的依赖,或是相关的编译环境,下面将记录描
- 1、首先模拟python类似shell命令行操作的接口:python安装subprocess(本地)、paramiko(SSH远程)#-*-
- 效果可执行正常加减乘除相关运算,源码已贴,自行测试。源码# coding=gbk"""作者:川川@时间 &nb
- 表达式的优先级表达式(Expression)是运算符(operator)和操作数(operand)所构成的序列代码段a = 1b = 2c
- 由于工作中涉及到生日编辑资料编辑,然后自己改了一下代码:<html><head> <meta charset=
- 假设通过爬虫你获取到了北京2016年3,10月份每天白天的最高气温(分别位于列表a,b),那么此时如何寻找出气温随时间(天)变化的某种规律?
- 一、*args的使用方法*args 用来将参数打包成tuple给函数体调用def fun(*arg): print(arg,ty
- 类:定义一件事物的抽象特点。对象:类的 实例。成员变量 − 定义在类内部的变量。该变量的值对外是不可见的,但是可以通过成
- 本文实例讲述了javascript设计模式 – 简单工厂模式。分享给大家供大家参考,具体如下:介绍:简单工厂模式是最常用的一类创建型设计模式
- JavaScript 有三种弹窗 Alert (只有确定按钮), Confirmation (确定,取消等按钮), Prompt (有输入对
- 越来越多的网站在logo中添加叶子元素,而此类logo又常常使用绿色,这可以给人希望、清新、健康的感觉,从而很容易被接受和认可。今天我们又收
- 如果你能很好的理解我下面的一句话,那这些都不是问题了。asp是服务器端语言,它的作用是动态生成客户端浏览器所能识别的html css jav
- 0.背景在游戏的UI中,往往会出现这样的情况:在某个战斗副本中获得了某个道具A,那么当进入主界面的时候,你会看到你的背包UI上有个小红点(意
- 本文实例讲述了Python高级变量类型。分享给大家供大家参考,具体如下:目标列表元组字典字符串公共方法变量高级知识点回顾Python 中数据
- Pandas是一个用于数据分析和操作的Python库。在pandas中几乎所有的操作都围绕着DataFrame。Dataframe是一个二维
- 昨天面试上来就是一个算法,平时基本的算法还行,结果变个法就不会了。。。感觉应该刷一波Leecode冷静下。。。今天抽空看下。题目就是要求O(
- 事件的概念事件:指的是文档或者浏览器窗口中发生的一些特定交互瞬间。我们可以通过 * (或者处理程序)来预定事件,以便事件发生的时候执行相应的
- 本文实例讲述了PHP使用PHPexcel导入导出数据的方法。分享给大家供大家参考,具体如下:导入数据:<?phperror_repor
- 本文实例讲述了python实现向ppt文件里插入新幻灯片页面的方法。分享给大家供大家参考。具体实现方法如下:# -*- coding: UT
- 本文实例讲述了SQL Server时间戳功能与用法。分享给大家供大家参考,具体如下:一直对时间戳这个概念比较模糊,相信有很多朋友也都会误认为