SlicePaginator extends AbstractPaginator

FinalYes

Stub pagination that contains only an already limited result set ("slice") and not all available results.

Internal

Table of Contents

Properties

$items  : array<string|int, mixed>
$keyOfFirstPaginatedItem  : int
$keyOfLastPaginatedItem  : int
$numberOfPages  : int
$totalAmount  : int

Methods

__construct()  : mixed
getCurrentPageNumber()  : int
Returns the current page number
getKeyOfFirstPaginatedItem()  : int
Returns the key of the first paginated item
getKeyOfLastPaginatedItem()  : int
Returns the key of the last paginated item
getNumberOfPages()  : int
Returns the total number of pages, given the total number of non paginated items and the items per page configuration
getPaginatedItems()  : iterable<string|int, mixed>
Returns an iterable, sub set of the original set of items
withCurrentPageNumber()  : PaginatorInterface
Sets the current page to calculate paginated items for
withItemsPerPage()  : PaginatorInterface
Sets the amount of paginated items per page
getAmountOfItemsOnCurrentPage()  : int
Must return the amount of paginated items on the current page
getTotalAmountOfItems()  : int
Must return the total amount of all unpaginated items
hasItemsOnCurrentPage()  : bool
States whether there are items on the current page
setCurrentPageNumber()  : void
setItemsPerPage()  : void
updateInternalState()  : void
This method is the heart of the pagination. It updates all internal params and then calls the {@see updatePaginatedItems} method which must update the set of paginated items.
updatePaginatedItems()  : void
Must update the paginated items, i.e. the subset of all items, limited and defined by the given amount of items per page and offset

Properties

$items

protected array<string|int, mixed> $items = []

$keyOfFirstPaginatedItem

protected int $keyOfFirstPaginatedItem = 0

$keyOfLastPaginatedItem

protected int $keyOfLastPaginatedItem = 0

$numberOfPages

protected int $numberOfPages = 1

$totalAmount

protected int $totalAmount = 0

Methods

__construct()

public __construct(array<string|int, mixed> $items[, int $currentPageNumber = 1 ][, int $totalAmount = 0 ][, int $itemsPerPage = 10 ]) : mixed
Parameters
$items : array<string|int, mixed>
$currentPageNumber : int = 1
$totalAmount : int = 0
$itemsPerPage : int = 10

getCurrentPageNumber()

Returns the current page number

public getCurrentPageNumber() : int
Return values
int

getKeyOfFirstPaginatedItem()

Returns the key of the first paginated item

public getKeyOfFirstPaginatedItem() : int

This is useful to display the exact range of items that are available via getPaginatedItems

Return values
int

getKeyOfLastPaginatedItem()

Returns the key of the last paginated item

public getKeyOfLastPaginatedItem() : int

This is useful to display the exact range of items that are available via getPaginatedItems

Return values
int

getNumberOfPages()

Returns the total number of pages, given the total number of non paginated items and the items per page configuration

public getNumberOfPages() : int
Return values
int

getPaginatedItems()

Returns an iterable, sub set of the original set of items

public getPaginatedItems() : iterable<string|int, mixed>
Return values
iterable<string|int, mixed>

withCurrentPageNumber()

Sets the current page to calculate paginated items for

public withCurrentPageNumber(int $currentPageNumber) : PaginatorInterface

Must return a new instance of the Paginator with an updated internal state

Parameters
$currentPageNumber : int
Return values
PaginatorInterface

withItemsPerPage()

Sets the amount of paginated items per page

public withItemsPerPage(int $itemsPerPage) : PaginatorInterface

Must return a new instance of the Paginator with an updated internal state

Parameters
$itemsPerPage : int
Return values
PaginatorInterface

getAmountOfItemsOnCurrentPage()

Must return the amount of paginated items on the current page

protected getAmountOfItemsOnCurrentPage() : int
Return values
int

getTotalAmountOfItems()

Must return the total amount of all unpaginated items

protected getTotalAmountOfItems() : int
Return values
int

hasItemsOnCurrentPage()

States whether there are items on the current page

protected hasItemsOnCurrentPage() : bool
Return values
bool

setCurrentPageNumber()

protected setCurrentPageNumber(int $currentPageNumber) : void
Parameters
$currentPageNumber : int

setItemsPerPage()

protected setItemsPerPage(int $itemsPerPage) : void
Parameters
$itemsPerPage : int

updateInternalState()

This method is the heart of the pagination. It updates all internal params and then calls the {@see updatePaginatedItems} method which must update the set of paginated items.

protected updateInternalState() : void

updatePaginatedItems()

Must update the paginated items, i.e. the subset of all items, limited and defined by the given amount of items per page and offset

protected updatePaginatedItems(int $itemsPerPage, int $offset) : void
Parameters
$itemsPerPage : int
$offset : int

        
On this page

Search results