laravel使用数字键迭代@foreach

时间:2016-02-11 07:28:26

标签: php laravel foreach blade mailgun

我一直坚持这个问题一天。

将数据传递给这样的视图:

return view('email') -> with ('name', $results);

这就是$ results的结果:

array:2 [▼
  0 => {#204 ▶}
  1 => {#205 ▼
    +"Field": "Art Education"
    +"Authors": "Genos"
    +"Title": "Modern Art"
    +"Date": "2015"
    +"Adviser": "Saitama"
    +"Language": "English"
    +"Subject": "Test Case"
  }
]

视图然后接收它:

@foreach ($name as $name)
//
@endforeach

这很好用,但现在我正在使用Mailgun。

这就是$结果必须通过的方式

Mail::send('email', $results, function($message) {

    $message->to('email@example.com', 'Your Friendly Neighborhood Spiderman')->subject('Your Cart');

    });

主要区别在于mailgun,我不能在第二个参数中使用with ('name', $results)子句,因此我遇到了一个关联数组,其中每个键都是一个迭代数字(例如:1,2,3 ...等)

如果它的键是数字,我有什么方法可以使用@foreach迭代刀片中的$结果吗?

显然我无法再使用@foreach ($name as $name)

谢谢!

2 个答案:

答案 0 :(得分:2)

它对我有用

$data['results'] = $results;

Mail::send('email', $data, function($message) {

$message->to('email@example.com', 'Your Friendly Neighborhood Spiderman')->subject('Your Cart');

});

并且在mail.blade.php中我可以迭代

@foreach ($results as $name)

答案 1 :(得分:1)

当您将$ results传递给Mail :: send函数时,您可以像使用任何其他刀片文件一样在您的电子邮件刀片模板中访问此数据。