Ich habe eine Reihe von Ergebnissen (z. B. [1,2,3,4,5,6,7,8,9,10,11]).Wie Ergebnisse in 3 Spalten aufgeteilt werden
, die ich als 1 Zeile mit 3 Spalten angezeigt werden sollen
1|5|9
2|6|10
3|7|11
4|8|
Was ich 1 Zeile mit 4 Spalten
1|4|7
2|5|8
3|6|9
10|
11|
Bis ich ein 12.-Objekt hinzufügen, dann werde ich 1 Zeile mit 3 Spalten
1|5|9
2|6|10
3|7|11
4|8|12
Mein Code in Blattvorlage
<!-- partials/tables/table_list.blade.php -->
@section('tables')
<?php $chunkSize = floor(count($tables)/3); ?>
<section id="tables-overview">
<div class="row">
@foreach ($tables->chunk($chunkSize , 1) as $chunk)
<div class="col-md-4">
@include('partials.tables.table_chunk')
</div>
@endforeach
</div>
</section>
@endsection
<!-- partials/tables/table_chunk.blade.php -->
<table class="table table-responsive">
<thead>
<tr>
<th class="text-center">@lang('table.identifier')</th>
<th class="text-center">@lang('table.property')</th>
<th class="text-center">
@permission('manage-tables')
<a href="{{ route('CreateTable') }}">@lang('action.create')</a>
@endpermission
</th>
</tr>
</thead>
<tbody>
@foreach ($chunk as $table)
<tr>
<td class="text-center">{{ $table->getId() }}</td>
<td class="text-center">{{ $table->getProperty() }}</td>
<td class="text-center">
@permission('manage-tables')
<a class="btn btn-primary" href="{{ route('UpdateTable', ['id' => $table->getId()]) }}">@lang('action.update')</a>
@endpermission
</td>
</tr>
@endforeach
</tbody>
</table>
Wenn die Anzahl der $ -Tabellen durch 3 (Anzahl der Spalten, die ich will) geteilt werden kann, bekomme ich 3 Chunks. Wenn nicht, bekomme ich 3 Stücke + die restlichen 1 oder 2 Objekte, die beide in eine 4. Spalte gelegt werden. Ich kann sie horizontal als getan here platzieren, aber ich finde das "ungerade". Beim Lesen einer Liste liest man zuerst von oben nach unten und dann von links nach rechts.
UPDATE Ich habe auch versucht ceil() verwendet als von Huzaib Shafi vorgeschlagen. Aber dann bekomme ich
was auch nicht 100% was ich wollte, aber ist ziemlich nah dran. Ich werde den Vorschlag von Homam Alhaytham nächsten versuchen.
Ich teile meine Ansichten in kleinere Teiltöne, es macht sie für mich lesbarer. Und einige dieser kleinen Teiltöne sind in mehr als einer Ansicht enthalten. –