5
Log::info('Sending email', array(
    'title' => $attributes['title'],
    'recipient' => $attributes['email']
));

Mail::queue('emails.welcome', $attributes, function($message) use ($attributes)
{
    $message
        ->to($attributes['email'])
        ->subject($attributes['title']);
});

問題は、に渡されるクロージャにありMail::queueます。どうしたの?これはdocs にあるものとまったく同じです。

4

4 に答える 4

1

まあ、それはあなたが電子メール ビューに渡そ$attributesうとしているものだと思いますwelcome。そうであれば、それを配列に入れる必要があります。その場合、次のようなものにする必要があります。

Mail::queue('emails.welcome', array('attributes' => $attributes), function($message) use ($attributes)
{
    $message
        ->to($attributes['email'])
        ->subject($attributes['title']);
});

...これはあなたのために働くかもしれません! :D

于 2013-10-29T17:23:58.323 に答える
0

この投稿が古いことは知っていますが、最近このエラーも発生しました。原因は、メール キュー コールバック内に $request インスタンスを配置していたことです。

Mail::queue('emails.welcome',$data,function(){

$email = $request->input('email'); // <- apparently this will cause a closure error


});

また、検索から、シリアル化できないデータをクロージャー内に配置できないことも学びました。これには、雄弁なモデルやオブジェクトが含まれます。

于 2015-04-30T14:08:09.157 に答える