Laravel 邮件,无法将变量传递到主题中,但它可以在正文中使用

我正在发送一封简单的电子邮件,需要在正文和主题中使用变量。将变量传递到正文中效果很好,但在我的主题行上失败并显示未定义的变量


$body = "Attached is the " .$name. " Report for ".date('Y-m-d');

Mail::raw($body , function ($message) use ($emails,$filepath,$filename) {

    $message->from('noreply@test.com', 'webmail');

    $message->attach(storage_path($filepath.'/'.$filename.'.xlsx'));

    foreach ($emails['to'] as $email) {

        $message->to($email);

    }

    foreach ($emails['cc'] as $email) {

        $message->cc($email);

    }

    $message->subject("Report for " .$name. " account");

});

为什么这里用的是body而不是subject呢?


慕森王
浏览 81回答 1
1回答

largeQ

您需要将名称传递到函数的 use 语句中。它没有定义,因为它没有传递到回调函数中。Mail::raw($body , function ($message) use ($emails,$filepath,$filename,$name) {
打开App,查看更多内容
随时随地看视频慕课网APP