تقسیم foreach به قطعات کوچکتر در Blade لاراول

تقسیم foreach به قطعات کوچکتر در Blade لاراول

در استفاده از foreach در Blade لاراول، می‌توانید از تابع ()chunk استفاده کنید و نتایج آن را به قطعات کوچکتر تقسیم کنید.


برای مثال، فرض می‌کنیم شما دارای آرایه‌ای از 10 رکورد هستید و می‌خواهید آن‌ها را به صورت زیر نمایش دهید:

بخش اول

آیتم 1
آیتم 2
آیتم 3
آیتم 4
آیتم 5

بخش دوم

آیتم 6
آیتم 7
آیتم 8
آیتم 9
آیتم 10

به صورت معمول، می‌توانید از یک متغیر loop$ برای این کار استفاده کنید:

@foreach($items as $item)
    @if($loop->first or $loop->iteration % 5 == 0)
        <ul>
    @endif
    <li>
        Item {{ $loop->iteration }}
    </li>
    @if($loop->last == true or $loop->iteration % 5 == 0)
        </ul>
    @endif
@endforeach

اما روش بهتر برای انجام این کار استفاده از تابع ()chunk در حلقه ها است:

@foreach($items->chunk(5) as $chunk)
    <ul>
        @foreach($chunk as $item)
            Item {{ $loop->iteration }}
        @endforeach 
    </ul>
@endforeach

امیدوارم این آموزش مفید واقع شود. در صورت تمایل می توانید اطلاعات بیشتر در مورد متد ()chunk را در اینجا به دست آورید. 

مطالب مشابه