我有很多电子邮件必须发送给网站的管理员,即在 .env 中声明的电子邮件
因此,在我创建的每个可邮寄邮件中,对于 $this->to((,我想添加 .env 中定义的电子邮件,以便在它发生变化时,我不必绕过每封邮件并手动更改它。
所以我尝试这样做只是为了测试目的:
Route::get('send', function(){
Mail::send(new AdminEmail());
})->name('test.email');
Mailable 在构造函数中如下所示:
public function __construct()
{
$this->from('no-replya@gmail.com', 'Tester');
$this->to(env("MAIL_USERNAME"), 'Admin');
}
在 .env 中,我有配置:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=admin@gmail.com
MAIL_PASSWORD=z6c4czc44
MAIL_ENCRYPTION=tls
当我尝试发送电子邮件时,我看到以下错误:
Address in mailbox given [] does not comply with RFC 2822, 3.6.2.
因此,我似乎无法正确访问变量。
如何从 .env 文件访问电子邮件?
与其尝试env("MAIL_USERNAME")
config('mail.username')
它首先尝试在 .env 文件中获取配置变量值,如果在 .env 文件中找不到变量值,它将从config/mail.php