Laravel通过配置.env文件设置邮件驱动,创建Mailable类定义内容,编写Blade模板,调用Mail::to()->send()发送邮件,支持多种驱动和多收件人,便于开发与测试。

Laravel 提供了简单而强大的邮件发送功能,支持多种邮件驱动,如 SMTP、Mailgun、Postmark、Sendmail 等。配置和使用非常方便,只需几个步骤即可实现邮件发送。
Laravel 的邮件配置位于 .env 文件和 config/mail.php 中。大多数配置项可以通过环境变量控制,便于在不同环境中切换设置。
打开 .env 文件,设置以下内容:
MAIL_MAILER=smtp
MAIL_HOST=smtp.mailgun.org
MAIL_PORT=587
MAIL_USERNAME=your_username
MAIL_PASSWORD=your_password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
说明:
如果使用第三方服务如 Mailgun 或 Postmark,需将 MAIL_MAILER 改为对应值,并在 config/services.php 中补充 API 凭据。
Laravel 使用 Mailable 类定义邮件内容。运行以下命令生成一个邮件类:
php artisan make:mail WelcomeEmail
生成的类位于 app/Mail/WelcomeEmail.php。编辑该类的 build() 方法:
public function build()
{
return $this->from('hello@example.com', 'Example')
->subject('欢迎注册')
->view('emails.welcome');
}
view('emails.welcome') 指向资源视图文件,需创建对应的 Blade 模板。
在 resources/views/emails/ 目录下创建 welcome.blade.php:
<!DOCTYPE html>
<html>
<head>
<title>欢迎加入我们</title>
</head>
<body>
<h1>你好,{{ $name }}!</h1>
<p>感谢你注册我们的服务。</p>
</body>
</html>
可以在 Mailable 构造函数中传入数据,在模板中使用变量。
使用 Mail::to() 方法快速发送邮件:
use Illuminate\Support\Facades\Mail;
use App\Mail\WelcomeEmail;
Mail::to('user@example.com')->send(new WelcomeEmail());
也可以同时发送给多个收件人:
Mail::to(['a@example.com', 'b@example.com'])->send(new WelcomeEmail());
若需要抄送或密送,可在 Mailable 类中使用 cc() 或 bcc() 方法。
测试环境下建议使用 log 驱动记录邮件内容,避免真实发送:
MAIL_MAILER=log
基本上就这些。配置好驱动,定义 Mailable 类,编写模板,调用发送方法即可完成 Laravel 邮件发送。整个流程清晰且易于维护。
以上就是laravel如何发送邮件和配置邮件驱动_Laravel邮件发送与邮件驱动配置方法的详细内容,更多请关注php中文网其它相关文章!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号