【问题标题】:Laravel Blade - Invalid argument supplied for foreach()Laravel Blade - 为 foreach() 提供的参数无效
【发布时间】:2018-02-26 01:05:36
【问题描述】:

这是我的阵列 (sturmCluster) 的一部分。

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [Name] => Tom
                    [Punkte] => 8
                )

            [1] => Array
                (
                    [Name] => Dave
                    [Punkte] => 8
                )

            [2] => Array
                (
                    [Name] => Christian
                    [Punkte] => 12
                )

        )
)

我的函数返回

return view('cluster')->with('sturmCluster');

在视图中,我尝试使用

从数组中获取数据
<div class="row">
    <div class="col-6 col-md-4">
    <label for="">Test</label>
    @foreach($sturmCluster)
        {{"$sturmCLuster->Name"}}<br/>
    @endforeach
</div>

如何使用刀片处理阵列。对于我的第一个测试,我只想从数组中返回所有名称值。

【问题讨论】:

  • 我认为您需要在数组中再深入一层,例如 @foreach($sturmCluster[0] as $cluster) 或将其传递给视图,例如:return view('cluster')-&gt;with('sturmCluster', $sturmCluster[0]);
  • 至少@foreach($sturmCluster as $item)

标签: php arrays laravel blade


【解决方案1】:
@foreach($strumCluster as $key=>$sturmCluster)
    {{$sturmCLuster['Name']}}<br/>
@endforeach

试试这个。

【讨论】:

  • 这行得通,但因为 return view('cluster')->with('sturmCluster', $newerarray[1]);我只得到 [1] 数组部分。但我什么都需要。
  • 好的,我有解决方案,它是 $sturmCluster[0]['Name']
【解决方案2】:

所以你的数组看起来像这样

$sturmCluster = array(
        array(
            array('Name'=>'Tom','Punkte'=>8),
            array('Name'=>'Dave','Punkte'=>8),
            array('Name'=>'Christian','Punkte'=>12)
        )
);

您可以将整个数组传递给视图,而无需显式传递 sturmCluster 数组的第一个元素。

return view('cluster')->with('sturmCluster',$sturmCluster);

然后运行循环:

@foreach($sturmCluster as $array)
   @foreach($array as $subarray)
       {{$subarray['Name']}}
   @endforeach
@endforeach

【讨论】:

    猜你喜欢
    • 2020-09-14
    • 2018-12-09
    • 1970-01-01
    • 2020-03-08
    • 2015-06-29
    • 2022-01-27
    • 2017-11-26
    • 2021-12-25
    • 2019-10-05
    相关资源
    最近更新 更多