禁用Laravel电子邮件-BeautyMail

car*_*e20 3 php email laravel

我正在寻找一种方法来禁用从Laravel内部发送所有电子邮件。我正在处理一个网站的本地开发副本,并且它一直在向实际用户发送电子邮件,这是我在测试过程中想要的最后一件事。

我所做的:

我进入config / mail.php并添加了以下行:

    'pretend' => true,
Run Code Online (Sandbox Code Playgroud)

另外,.env文件中有一些与Mailgun相关的配置(域和机密)已删除,因此应该没有连接到Mailgun的可能性。

此后,系统将在测试期间继续发送电子邮件。我的理解是,将'pretend'设置为true应该足以将所有发送的电子邮件路由到日志文件。

值得注意的是,该系统正在使用BeautyMail,据我所知,它只是一个电子邮件模板系统。但是,它的确看起来像是使用BeautyMail send()函数发送了持续发送的电子邮件:

$beautymail = app()->make(\Snowfire\Beautymail\Beautymail::class);
    $beautymail->send('emails.templates.testemail', compact('url'), function ($message) use ($email) {
        $message->from(Mailer::$sender)->to($email)->subject('Test email');
    });
Run Code Online (Sandbox Code Playgroud)

如何禁用此功能,并确保系统不会继续从开发环境中向实际用户发送电子邮件?

小智 7

您是否尝试 'driver' => env('MAIL_DRIVER', 'log'), 在config / mail.php或 MAIL_DRIVER = log .env中进行设置