W jaki sposób rozpocząć od np. 3 elementu w pętli foreach

0

Witam. Mam zrobiony slider + obok 3 newsy. Zamysł jest taki, żeby pierwsze 3 newsy pojawiały się na sliderze, a kolejne 3 były wrzucane gdzie indziej. Newsy są wysyłane do widoku z kontrolera $this->notifications

<?php foreach($this->notifications as $news): ?>

<div class="item">
...
</div>

<?php endforeach; ?>

i są ułożone od najnowszego, także z tym nie ma problemu. Myślałem, żeby może zdejmować po każdym obrocie 1 news i później gdy skorzystam drugi raz z tej samej pętli w innym miejscu to zadziała, ale coś mi nie wyszło chyba.

0

Jeżeli chcesz zacząć od któregoś elementu, to czemu nie skorzystać ze zwykłego for?

0

Idę się zastrzelić. Tak to jest jak człowiek ślepo się skupi na jednym rozwiązaniu. Zaraz przetestuję.

1
 
foreach ($array as $key => $value)
{
    if ($key < 3)
        continue;
    echo $value;
}
1

Mam lepszy pomysł ;)

foreach (array_slice($tablica, 2) as $key => $value) {

}

To Ci da wszystkie elementy od trzeciego włącznie. Inne zastosowania zobacz sobie w dokumentacji: http://php.net/manual/en/function.array-slice.php

0

Witam,

Nie lepiej po prostu w panelu konfiguracyjnym, który możesz sobie łatwo napisać przekazywać ile newsów masz pobierać i za pomocą array_slice tak jak mówi Spine operować na ilości i kolejności newsów?

Pozdrawiam,
Robert

1 użytkowników online, w tym zalogowanych: 0, gości: 1