将数据传递给Laravel 4中的一个闭包

我试图在Laravel 4中使用邮件类,我无法将variables传递给$ m对象。

$ team对象包含我从数据库中获取的数据,并且有口才。

Mail::send('emails.report', $data, function($m) { $m->to($team->senior->email, $team->senior->first_name . ' '. $team->senior->last_name ); $m->cc($team->junior->email, $team->junior->first_name . ' '. $team->junior->last_name ); $m->subject('Monthly Report'); $m->from('info@website.com', 'Sender'); }); 

出于某种原因,我得到一个错误$团队对象不可用。 我想这与范围有关。

有任何想法吗 ?

如果你在函数之外实例化了$teamvariables,那么它不在函数范围内。 我认为你需要使用use关键字。

 $team = Team::find($id); Mail::send('emails.report', $data, function($m) use ($team) { $m->to($team->senior->email, $team->senior->first_name . ' '. $team->senior->last_name ); $m->cc($team->junior->email, $team->junior->first_name . ' '. $team->junior->last_name ); $m->subject('Monthly Report'); $m->from('info@website.com', 'Sender'); });