Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php laravel使用数字键在@foreach中迭代_Php_Laravel_Foreach_Blade_Mailgun - Fatal编程技术网

Php laravel使用数字键在@foreach中迭代

Php laravel使用数字键在@foreach中迭代,php,laravel,foreach,blade,mailgun,Php,Laravel,Foreach,Blade,Mailgun,我已经在这个问题上纠缠了一天了 已将数据传递给如下视图: return view('email') -> with ('name', $results); @foreach ($name as $name) // @endforeach 这就是$results的外观: array:2 [▼ 0 => {#204 ▶} 1 => {#205 ▼ +"Field": "Art Education" +"Authors": "Genos" +"Ti

我已经在这个问题上纠缠了一天了

已将数据传递给如下视图:

return view('email') -> with ('name', $results);
@foreach ($name as $name)
//
@endforeach
这就是$results的外观:

array:2 [▼
  0 => {#204 ▶}
  1 => {#205 ▼
    +"Field": "Art Education"
    +"Authors": "Genos"
    +"Title": "Modern Art"
    +"Date": "2015"
    +"Adviser": "Saitama"
    +"Language": "English"
    +"Subject": "Test Case"
  }
]
然后,视图按如下方式接收它:

return view('email') -> with ('name', $results);
@foreach ($name as $name)
//
@endforeach
这很好,但现在我和邮枪一起工作

这就是$results的传递方式

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…等等)

如果blade中的$results的键是数字,那么我有没有办法用@foreach遍历它

显然,我不能再使用
@foreach($name as$name)

谢谢

这对我很管用

$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)

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

为什么您不能在刀片中使用@foreach?它应该能很好地工作。啊,因为Mail:send中的第二个参数不允许我定义一个变量,我可以将$results中的每个对象传递给它。我不能使用Mail::send('email',('name',$results),函数($message)。因此@foreach中没有“name”可以让我在循环中传递每个对象。一旦传递了$results,您就可以访问email.blade.php中的数组。让我试试您所做的。您所做的不同之处是:$data['results']=$results;part。这将我的结果传递到一个数组键中,我可以在视图中捕捉到。您使它看起来如此简单。我希望它对我有效。谢谢!您解决了我的问题。非常感谢您并接受我的投票。干杯!