resohead/laravel-test-mail

使用Laravel应用中的命令快速发送测试邮件

v2.0.0 2022-03-26 23:10 UTC

This package is auto-updated.

Last update: 2024-09-27 04:41:04 UTC


README

Latest Version on Packagist Build Status Code Coverage Quality Score Maintainability Total Downloads

这是一个简单的包,用于在Laravel应用中通过 artisan 命令发送测试邮件。非常适合在无需任何设置的情况下检查邮件和队列配置。

安装

您可以通过 composer 安装此包

composer require resohead/laravel-test-mail

该包将自动注册自己。

可选:发布配置文件以启用预设

php artisan vendor:publish --provider="Resohead\LaravelTestMail\LaravelTestMailServiceProvider" --tag="config"

基本用法

要发送测试邮件,请运行以下 artisan 命令

php artisan mail:test

默认情况下,这将

  • 发送到您在邮件配置中定义的“from”地址,
  • 使用您的默认邮件驱动程序,
  • 同步处理

您还可以在命令签名中指定四个其他选项

  • 设置电子邮件地址,
  • 更改邮件驱动程序,
  • 启用队列(并设置队列名称),
  • 更改队列连接,
  • 选择预设

更改邮件驱动程序并通过队列运行可能需要启动/重置队列工作进程。

命令行选项

发送到指定的电子邮件地址

php artisan mail:test name@example.com

在默认队列上发送到指定的电子邮件地址

php artisan mail:test name@example.com --queue

通过日志驱动程序发送

php artisan mail:test --driver=log

在默认连接上发送到“emails”队列

php artisan mail:test --stack=emails

当使用 stack 参数时,无需设置 --queue 标志

使用“sqs”队列连接发送

php artisan mail:test --connection=sqs

当使用连接参数时,无需设置 --queue 标志

通过“emails”队列在“redis”连接上使用 SMTP 驱动程序发送

php artisan mail:test name@example.com --driver=smtp --connection=redis --stack=emails

队列

如果您使用连接选项,可能需要启动您的队列,例如

php artisan queue:work sqs --queue:emails

预设

您还可以配置预设以分组命令行选项。每个预设中定义的值将与命令行值以及您的默认邮件和队列配置合并。

示例配置\mail-test.php

'presets' => [

        'example1' => [
            'recipient' => 'preset1@example.com',
            'queue' => true
        ],

        'example2' => [
            'driver' => 'log',
            'stack' => 'emails'
        ],

        'example3' => [
            'recipient' => env('EMAIL_TO', 'preset3@example.com'),
            'driver' => 'smtp',
            'connection' => 'redis',
            'stack' => 'notifications'
        ],

    ]

预设:示例 1

设置特定的电子邮件地址并使用默认队列

php artisan mail:test --preset=example1

// php artisan mail:test preset1@example.com --queue

预设:示例 2

使用日志邮件驱动程序和电子邮件队列

php artisan mail:test --preset=example2

// php artisan mail:test --driver=log --stack=emails

预设:示例 3

使用日志邮件驱动程序和电子邮件队列

php artisan mail:test --preset=example3

// php artisan mail:test preset3@example.com --driver=smtp --connection=redis --stack=notifications

替代方案

这是一个简单包,旨在快速触发邮件以检查您的配置。

如果您想检查电子邮件在浏览器中的外观,请使用 Laravel 文档来渲染 mailables(自 Laravel 5.5 以来可用)。

如果您需要一个包来使用模拟数据发送 mailable,请尝试使用 Spatie 的 laravel-mailable-test 包

测试

composer test

变更日志

有关最近更改的更多信息,请参阅 CHANGELOG

贡献

有关详细信息,请参阅 CONTRIBUTING

鸣谢

许可

MIT 许可证(MIT)。有关更多信息,请参阅 许可文件