我认为您可以检查 env('MAIL_USERNAME') 是否返回了正确的邮件格式。此外,您可以添加 'from' 方法。您可以这样做(在 Mail::... 之前):
dd(env('MAIL_USERNAME'))
如果你得到一个错误的值或者不是一个像字符串和格式正确的电子邮件地址这样的值,忘记它!
您确定需要像对象一样接收 $data 吗?如果没有,则不需要以这种方式传递 var:['data' => $data],只需 $data
请注意,我没有在此处包含 env('MAIL_USERNAME')。
Mail::send('email-view', $data, function ($message) {
$message->from('thesystem@mail.com', 'the name of your app');
$message->to('correct@email.com', 'This is a correct format')->subject('Example');
});
但是,如果您需要从 env('MAIL_USERNAME') 传递电子邮件地址,并且您已验证 env('MAIL_USERNAME') 正确返回电子邮件地址,为什么不尝试将其包含到 de $数据变量?像这样:
$data = $request->only('name', 'email', 'mobile', 'message') + ['to' => env('MAIL_USERNAME')];
或者您可以使用数组中的电子邮件:
public function contact_email(Request $request)
{
$data = $request->only('name', 'email', 'mobile', 'message');
Mail::send('email-view', $data, function ($message) use ($data) {
$message->from('thesystem@mail.com', 'the name of your app');
$message->to($data['email'], $data['name'])->subject('This is a way');
});
}
给你的提示:
您不需要以这种方式从 $request 获取数据。你可以这样做:
$data = $request->only('name', 'email', 'mobile', 'message');
希望能帮到你!