【问题标题】:Undefined variable when trying to Mail::send尝试 Mail::send 时未定义的变量
【发布时间】:2016-08-22 18:40:01
【问题描述】:

我正在尝试将结果插入到我的电子邮件视图中,然后使用 foreach 来显示数据,但是我一直 getting

“未定义变量:结果”

。我该如何解决?

这是我的控制器代码:

$results = $sales->orderBy('created_at', 'desc')->get();

Mail::send('mailings.emails.' . $view, $data, function($message) use ($person, $results, $title )
            {
                $message->to($person->peopleEmail, $person->peopleFirstName . ' ' . $person->peopleLastName)->subject($title);
            });

这是我的刀片:

@foreach($results as $result)
<table class="row">
    <tr>
        <td class="wrapper last">

            <table class="twelve columns">
                <tr>
                    <td>
                        <h5 style="text-align:center;">{{$result->SaleID}}</h5>
                    </td>
                    <td class="expander"></td>
                </tr>
            </table>

        </td>
    </tr>
</table>
@endforeach

【问题讨论】:

    标签: php laravel laravel-4


    【解决方案1】:

    请参考:https://laravel.com/docs/5.2/mail#sending-mail

    $results 未通过:

     Mail::send('mailings.emails.' . $view, $data, function($message) use ($person, $results, $title )
            {
                $message->to($person->peopleEmail, $person->peopleFirstName . ' ' . $person->peopleLastName)->subject($title);
            });
    

    您需要将其传递为:

    $data = ['results' => $results];//ADD this line
    
     Mail::send('mailings.emails.' . $view, $data, function($message) use ($person, $results, $title )
            {
                $message->to($person->peopleEmail, $person->peopleFirstName . ' ' . $person->peopleLastName)->subject($title);
            });
    

    【讨论】:

    • 是的,我刚刚发现了它。谢谢!
    【解决方案2】:

    试试这个:

    $data = array('mailTo' => $serviceProviderEmail, 'subject' => $subject ,'mailBody' => $message);
    Mail::send('template_name', ['data' => $data], function ($message) use ($data) {
        $message->from('no-reply@xyz.com', 'xyz');
        $message->to($data['mailTo'])->subject($data['subject']);
    });
    

    我正在使用这种语法,它运行良好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多