信息发布→ 登录 注册 退出

Lar*el如何发送邮件_Lar*el Mailables构建与发送邮件的简明教程

发布时间:2025-12-15

点击量:
Lar*el通过Mailable类和配置SMTP驱动实现邮件发送,1. 使用artisan命令创建Mailable类;2. 在build方法中设置主题、视图与数据;3. 编写Blade模板并传递变量;4. 在.env中配置MAIL相关参数;5. 通过Mail门面在控制器中调用send方法发送邮件,支持多收件人与抄送,流程清晰且易于调试。

laravel如何发送邮件_laravel mailables构建与发送邮件的简明教程

在 Lar*el 中发送邮件变得异常简单,得益于其强大的 Mailables 系统。你不再需要手动配置 SMTP 或拼接邮件内容,Lar*el 提供了清晰、优雅的面向对象方式来构建和发送邮件。本文将带你一步步实现从创建 Mailable 类到成功发送邮件的全过程。

创建并配置 Mailable 类

Lar*el 使用 Mailable 类来封装邮件逻辑。每个邮件都可以是一个独立的类,包含主题、收件人、视图模板和数据传递等信息。

使用 Artisan 命令创建一个 Mailable:

php artisan make:mail WelcomeEmail

该命令会在 app/Mail 目录下生成 WelcomeEmail.php 文件。打开它,你会看到一个空的 build 方法,这就是定义邮件内容的地方。

例如,设置邮件主题和使用的视图:

public function build()
{
    return $this->subject('欢迎加入我们!')
                ->view('emails.welcome');
}
</font>

编写邮件视图模板

Lar*el 邮件支持 Markdown 和普通 Blade 模板。这里以 Blade 为例。在 resources/views/emails 目录下创建 welcome.blade.php

你可以通过 $message 变量访问邮件实例,也可以传递自定义数据。比如在 Mailable 中添加 with() 方法:

public function build()
{
    return $this->subject('欢迎加入我们!')
                ->view('emails.welcome')
                ->with([
                    'name' => '张三',
                    'url'  => 'https://example.com'
                ]);
}
</font>

然后在视图中使用这些变量:

星声AI 星声AI

可分享的AI播客内容生成器和效率工具

星声AI 185 查看详情 星声AI
<h1>你好,{{ $name }}!</h1>
<p>感谢注册,点击 <a href="{{ $url }}">这里</a> 开始使用。</p>

配置邮件驱动与环境设置

Lar*el 支持多种邮件驱动:smtp、sendmail、mailgun、postmark 等。最常用的是 SMTP。配置位于 .env 文件中:

MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=your@gmail.com
MAIL_PASSWORD=your-app-password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=your@gmail.com
MAIL_FROM_NAME="Your App"

注意:若使用 Gmail,需开启两步验证并生成“应用专用密码”作为 MAIL_PASSWORD。

在控制器中发送邮件

使用 Lar*el 的 Mail 门面即可发送邮件。先引入 Mailable 类:

use App\Mail\WelcomeEmail;
use Illuminate\Support\Facades\Mail;

Mail::to('user@example.com')->send(new WelcomeEmail());
</font>

你也可以发送给多个收件人或抄送:

Mail::to(['a@example.com', 'b@example.com'])
    ->cc('manager@example.com')
    ->send(new WelcomeEmail());
</font>

基本上就这些。Lar*el 的 Mailables 让邮件发送变得结构清晰、易于维护。只要配置好驱动、写好模板、调用 send 方法,邮件就能顺利发出。不复杂但容易忽略细节,比如环境变量拼写或视图路径错误,调试时可借助 Lar*el Log 或使用 log 驱动测试流程。

以上就是Lar*el如何发送邮件_Lar*el Mailables构建与发送邮件的简明教程的详细内容,更多请关注php中文网其它相关文章!


相关文章: 如何优雅地扩展SprykerGlue后端API授权逻辑,使用spryker/glue-backend-api-application-authorization-connector-extension  MAC怎么让Dock栏只显示当前运行的应用_MAC终端命令实现极简Dock栏  Archive of Our Own官网直达 AO3最新可用地址一览  Tabulator表格日期时间排序问题及自定义解决方案  Node.js 中使用 node-cron 实现定时 API 数据抓取与处理  解决macOS上安装pyhdf时‘hdf.h’文件缺失的编译错误  J*a中实现Go语言select通道多路复用机制  使用CSS更改登录屏幕输入框中PNG图标颜色的策略与局限性  学习通网页版官方登录 超星学习通电脑端入口指南  mcjs网页版在线存档 mcjs云存档登录入口  KFC游戏互动怎么赢取优惠券_KFC线上游戏活动参与与优惠代码赢取教程  c++如何使用折叠表达式(Fold Expressions)_c++17可变参数模板新技巧  Python类型检查:优化关联可选属性的Mypy推断策略  响应式CSS Grid布局:优化网格项在小屏幕下的堆叠与宽度适配  mysql备份恢复性能优化_mysql备份恢复性能优化方法  html两个JS只运行一个怎么办_让双JS在html中都运行方法【技巧】  CSS自定义字体样式被系统字体替换怎么办_font-face方式指定font-display控制渲染策略  Go语言中动态执行代码字符串的策略与实践  蛙漫限时开放最深处链接_蛙漫全站漫画会员同款秒开地址  在python-socketio事件处理器中安全访问Flask应用上下文  Python async/await 协程:CPU密集型任务的陷阱与解决方案  解决移动端滚动问题的overflow属性应用指南  C++如何比较两个字符串_C++ string compare函数与操作符对比  抖音商城签到领现金是真的吗_抖音商城签到奖励与提现说明  CSS Box Model与弹性按钮:维持布局稳定的动画实践  夸克浏览器图书入口 夸克手机浏览器阅读入口  C++如何跨平台操作文件和目录_C++17标准库std::filesystem的使用教程  怎样使用“本地安全策略”提升Windows安全性_Secpol.msc配置指南【高手】  优酷会员付费后没到账怎么办_优酷会员充值异常及解决方法  CSS Flexbox与媒体查询:实现响应式布局中元素的并排与堆叠  夸克浏览器桌面版同步不了书签怎么处理 夸克浏览器跨设备同步异常解决方案  黑猫投诉统一入口官网 消费者权益保护投诉平台  蛙漫漫画官网在线入口 蛙漫全本漫画免费阅读平台  Python字典中优雅地迭代剩余元素的方法  XML中包含HTML标签导致解析错误? 正确嵌入非XML数据的两种方法  一加手机电池耗电快怎么办_一加手机电池耗电快的解决方法  12306怎么选座位选到安静区_12306选座安静区域选择策略  优化Django表单:提交验证失败后保留用户输入  Win11截图该按哪些键 Win11截屏完整流程解析【教程】  中兴Axon42Ultra怎样在文件App筛图_iPhone中兴Axon42Ultra文件App筛图【图片筛选】  Go语言:非阻塞式判断标准输入(os.Stdin)是否有数据  Python实现多节点属性重叠度分析教程  如何将HTML表格多行数据保存到Google Sheets  Gmail邮箱申请注册直达_Gmail邮箱免费注册PC版官网入口2025  Python多版本共存与虚拟环境管理深度指南  mysql如何分析事务日志_mysql事务日志分析方法  UC浏览器网页版登录入口官网 电脑版网址入口  iwriter统一登录平台 iwrite账号密码登录页面  《燕云十六声》两周内达九百万玩家!位居畅销榜第五  字由网在线版登录地址 字由网网页版安全入口 

在线客服
服务热线

服务热线

4008988990

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!