如果描述相同,则组选择选项

时间:2019-10-23 13:48:10

标签: laravel

所以我可以选择这些选项来自laravel Foreach

@foreach($courseMonth as $cm)->groupBy('description');
    <optgroup label="{{ nameMonth($cm->month) }}">
        @foreach($days as $date)
            @if(date('m', strtotime($date['date'])) == $cm->month)
                <option value="{{ date('d/m/Y', strtotime($date['date'])) ." - ". $date['hours'] }}">{{ $date['description'] . ' - ' . date('d/m/Y', strtotime($date['date'])) . ' - ' . $date['hours'] . ' ('. $date['total'] . 'h)'}}</option>
            @endif
        @endforeach
    </optgroup>
    <?php $i++;?>
@endforeach

这是选项。我想如果两个选项中的$date['description']相同,则将两个选项组合在一起。更详细地讲,如果三个选项的描述为“工作”,则将所有选项组合在一起。 我在foreach前面试过了一个groupby

@foreach($courseMonth as $cm)->groupBy('description');

但这没做任何事情。选项表只有一行(例如:一行只有一个描述,但是在选择中可以有多个日期选项),所以我仅在两个选项中有相同描述时才将它们分组。

表结构:

-----------------------------------------------
| id | description | date     | hours | total |
|---------------------------------------------|
| 4  |    work     |2019-23-4 | 14h   | 6h    |
| 5  |    work     |2019-23-5 | 13h   | 5h    |
| 6  |    school   |2019-23-5 | 13h   | 5h    |
-----------------------------------------------

因此前两个将出现在同一个选项中,最后一个将出现在select的第二个选项中。

0 个答案:

没有答案