当我试图使用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);
});