使用SwiftMailer在Laravel中发送动态电子邮件

时间:2020-04-06 12:37:28

标签: php laravel

我想在laravel注册表格后发送动态电子邮件。 我的代码是:

$gift = new Gift();
        $gift->user_id = Auth::id();
        $gift->register_user = $request->input('email');
        $gift->status = 0;
        $gift->amount = 10;
        $gift->code = uniqid('coinex-');
        if ($gift->save()) {
            $data = array('code'=>$gift->code,'friend'=>Auth::user()->name,'email'=> $gift->register_user);
            $email =  $gift->register_user;
            Mail::send('invite', $data, function($message) {
                $message->to("Receiver_Email_address", Auth::user()->name.' Invited you to Join site')->subject
                (Auth::user()->name.' Invited you to Join Coinex Plus');
                $message->from('info@site.com','site');
            });
            toast('Thank you for your cooperation !', 'success');
            return redirect()->back();
        } else {
            toast('something wrong please try again !', 'danger');
            return redirect()->back();
        }

如何用 $ email 替换 Receiver_Email_address

2 个答案:

答案 0 :(得分:2)

您还可以通过传递多个变量来传递它们,例如:use($variable1, $variable2)

尝试一下:

Mail::send('invite', $data, function($message) use ($email){
 $message->to($email, Auth::user()->name.' Invited you to Join site')->subject
 (Auth::user()->name.' Invited you to Join Coinex Plus');
 $message->from('info@site.com','site');
});

答案 1 :(得分:1)

您可以使用use关键字将变量传递给闭包。

下面是执行此操作的示例代码:

Mail::send($invite, $data, function ($message) use ($email) {
     $message->to($email, Auth::user()->name.' Invited you to Join site')->subject
            (Auth::user()->name.' Invited you to Join Coinex Plus');
            $message->from('info@site.com','site');
}

希望这对您有用。

最好。