AbstractPaginator implements PaginatorInterface

AbstractYes

Table of Contents

Interfaces

PaginatorInterface
An interface that defines methods needed to implement a paginator, i.e. an object that handles a set of items and returns a sub set of items, given by a configuration.

Properties

$keyOfFirstPaginatedItem  : int
$keyOfLastPaginatedItem  : int
$numberOfPages  : int

Methods

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
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

$keyOfFirstPaginatedItem

protected int $keyOfFirstPaginatedItem = 0

$keyOfLastPaginatedItem

protected int $keyOfLastPaginatedItem = 0

$numberOfPages

protected int $numberOfPages = 1

Methods

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

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 abstract getAmountOfItemsOnCurrentPage() : int
Return values
int

getTotalAmountOfItems()

Must return the total amount of all unpaginated items

protected abstract 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 abstract updatePaginatedItems(int $itemsPerPage, int $offset) : void
Parameters
$itemsPerPage : int
$offset : int

        
On this page

Search results