发送电子邮件时出现Laravel问题


Laravel problems when sending email

当我试图使用laravel中的swiftmailer发送电子邮件时,我会收到以下错误:"UsersController::{closure}()缺少参数2"。

我的代码如下:

Mail::send('emails.default', array('key' => Config::get('settings.WELCOMEMAIL')), function($message, $mail, $subject = 'Welcome!')
{
    $message->to($mail)->subject($subject);
});

不过这真的很奇怪。$mail变量包含一个有效的电子邮件地址,我在这个脚本中根本没有使用UsersController。

提前感谢

必须仅将$message传递给闭包。任何附加变量都必须使用use关键字传递:

Mail::send('emails.default', array('key' => Config::get('settings.WELCOMEMAIL')), function($message) use($mail, $subject)
{
    $subject = empty($subject) ? 'Welcome!' : $subject;
    $message->to($mail)->subject($subject);
});