WelcomeMail.php;
public function __construct(User $user)
{
$this->user = $user;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->view('email.register-mail');
}
}
RegisterController.php;
protected function create(array $data)
{
$user =User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
]);
$body = [];
$mailData = array('body'=>$body);
Mail::send('email.register-mail',$mailData, function ($message) use ($user){
$message->from(env('MAIL_USERNAME'), 'EksikParça.');
$message->subject('Hosgeldiniz!');
$message->to(new WelcomeMail($user));
});
return $user;
}
}
这是我为用户注册时发送的电子邮件编写的代码。但 我收到了非法的偏移量类型错误。可能是为什么造成的?
答案 0 :(得分:0)
to()
中的Mail
方法期望接收者。
您可以向其传递用户对象或电子邮件地址。
因此,请尝试这样做:
Mail::to($user)
->send(new WelcomeMail($user));
您可以在Mail类中从右定义主题。在此处详细了解:https://laravel.com/docs/8.x/mail#sending-mail