Нумерация страниц по индивидуальному массиву в CakePHP 3

У меня есть пользовательский массив, как:

[business] => Array
(
[55] => Array
(
[id] => 1
[name] => abc
[contact] => 1325467897
),
[96] => Array
(
[id] => 5
[name] => xyz
[contact] => 9876543210
)

)

Этот массив получен из условных (если-еще) нескольких запросов. Итак, я просто хочу добавить нумерацию страниц в массиве. Может кто-нибудь предложить мне, как добавить пользовательскую нумерацию страниц в этот тип массива, используя стандартный пагинатор CakePHP 3.

4

Решение

PaginatorComponent может взять Cake\ORM\Query так как это нужно разбить на страницы, я бы посоветовал передать ваш скомпилированный объект запроса в paginator.

Таким образом, в вашем контроллере вы можете сделать что-то вроде следующего.

public function example()
{
$this->paginate = ['limit' => 5];

$query = $this->Examples->find();

if ($something === 'foo') {
$query->where(['foo' => $something]);
}

if ($wtfbbq) {
$query->contain(['Wtfs', 'Barbeques']);
}

$results = $this->paginate($query);
}

Это произведет Cake\ORM\Query с встроенной нумерацией страниц. Затем вы можете настроить параметры нумерации страниц по своему усмотрению, проверяя страницу книги на Paginator.

-2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]