Próbuję użyć klasy Mail w Laravel 4 i nie mogę przekazać zmiennych do obiektu $ m.
obiekt $ team zawiera dane, które pobrałem z bazy danych elokwentnie.
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');
});
Z jakiegoś powodu pojawia się błąd, w którym obiekt $ team jest niedostępny. Przypuszczam, że ma to coś wspólnego z lunetą.
Jakieś pomysły ?
Odpowiedzi:
Jeśli utworzyłeś wystąpienie
$team
zmiennej poza funkcją, nie ma jej w zakresie funkcji. Użyj słowa kluczowego use .Uwaga: Używana funkcja to zamknięcie PHP (funkcja anonimowa). Nie jest wyłączna dla Laravel.
źródło