Laravel 7.x非法偏移类型

时间:2020-09-24 23:35:14

标签: php laravel error-handling laravel-7

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;
    }
}

这是我为用户注册时发送的电子邮件编写的代码。但 我收到了非法的偏移量类型错误。可能是为什么造成的?

1 个答案:

答案 0 :(得分:0)

to()中的Mail方法期望接收者。

您可以向其传递用户对象或电子邮件地址。

因此,请尝试这样做:

Mail::to($user)
    ->send(new WelcomeMail($user));

您可以在Mail类中从右定义主题。在此处详细了解:https://laravel.com/docs/8.x/mail#sending-mail