Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.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 5.4嵌套循环_Php_Laravel_Loops_Nested - Fatal编程技术网

Php 带有分组数据集的Laravel 5.4嵌套循环

Php 带有分组数据集的Laravel 5.4嵌套循环,php,laravel,loops,nested,Php,Laravel,Loops,Nested,“过滤器”表如下所示: id | group | label | value ----+----------+-------------------+---------------- 12 | deadline | 1 to 3 days | 1 AND 3 14 | price | Any | 0 15 | price

“过滤器”表如下所示:

id |  group   |       label       |        value        
----+----------+-------------------+----------------

 12 | deadline | 1 to 3 days       | 1 AND 3            
 14 | price    | Any               | 0                  
 15 | price    | Less than 1000    | 0 AND 1000         
 16 | price    | 1000 to 10000     | 1000 AND 10000     
 22 | location | Any               | 0                  
 23 | location | New York          | newyork            
 24 | location | California        | california         
 25 | location | Alabama           | alabama 
我需要显示“组”下的“标签”块

我的控制器:

public function index(){
        $filters = Filters::all();
        return view('frontend.request', compact('filters'));
    }
public function index(){
    $filters = Filters::all();
    $groups = $filters->groupBy('group');
    return view('frontend.request', compact('groups'));
}
我的看法是:

<?php foreach ($filters as $filter) { ?>
                    <div class="panel panel-default">
                        <b>{{ $filter->group }}</b>
                        <div id="collapseOne1" class="panel-collapse collapse in">
                            <div class="panel-body">
                                <div class="checkbox">
                                    <label><input type="checkbox" name="{{ $filter->group }}" value="{{ $filter->any }}">{{ $filter->label }}</label>
                                </div>
                            </div>
                        </div>
                    </div>
                <?php } ?>

{{$filter->group}
{{$filter->label}
我想在一个框内显示组下的所有标签,以此类推。以上代码为每个不正确的标签创建不同的框

我相信,它一定是嵌套循环,但我很难在Laravel上编写它。你知道应该怎么做吗


注意:这个线程给出了部分答案,但在我的例子中我们不知道区块大小:

您可以使用Laravel的
groupBy()
收集方法

控制器:

public function index(){
        $filters = Filters::all();
        return view('frontend.request', compact('filters'));
    }
public function index(){
    $filters = Filters::all();
    $groups = $filters->groupBy('group');
    return view('frontend.request', compact('groups'));
}
视图:

@foreach($groups as$group=>$filters)
{{$group}
@foreach($filters作为$filter)
{{$filter->label}
@endforeach
@endforech