@JTester

Почему не работает pagination?

Здравствуйте! Почему не работает pagination? Что я сделал не так? Указывать мне про mysql не нужно, у меня есть конкретный массив. Вот код, как я пытаюсь
$data = [
    [
        'first' => 'first1',
        'second' => 'vovka'
    ],
    [
        'first' => 'tester',
        'second' => 'tester1'
    ],
    [
        'first' => 'dfdf',
        'second' => 'dd'
    ],
    [
        'first' => 'we',
        'second' => 'www'
    ],
    [
        'first' => '1',
        'second' => '2'
    ]
];

$page = 1;

$size_page = 5;
$offset = ($page-1) * $size_page;

$total_pages = ceil(count($data) / $size_page);

foreach (array_slice($data, $offset) as $key => $val) {
    if ($page <= $size_page) {
        echo $key['first'] . ' : ' . $val['second'] . '<br>';
    }
}
  • Вопрос задан
  • 98 просмотров
Решения вопроса 1
0xD34F
@0xD34F
array_slice($data, $offset)

Надо брать элементы только одной страницы, а не до конца - правильно будет array_slice($data, $offset, $size_page).

if ($page <= $size_page) {

Зачем сравнивать номер страницы с количеством элементов на странице, чего вы пытаетесь этим добиться? Бред же, уберите эту проверку.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы