Estou tentando usar a Mail Class no Laravel 4, e não consigo passar variáveis para o objeto $ m.
o objeto $ team contém dados que peguei do banco de dados com eloquent.
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('[email protected]', 'Sender');
});
Por algum motivo, recebo um erro em que $ team object não está disponível. Suponho que tenha algo a ver com o escopo.
Alguma ideia ?
Respostas:
Se você instanciou a
$team
variável fora da função, ela não está no escopo das funções. Use a palavra-chave use .Nota: A função que está sendo usada é um PHP Closure (função anônima) que não é exclusiva do Laravel.
fonte