LengthAwarePaginator
class LengthAwarePaginator extends AbstractPaginator implements Arrayable, ArrayAccess, Countable, IteratorAggregate, JsonSerializable, Jsonable, LengthAwarePaginator
Properties
protected Collection | $items | All of the items being paginated. |
from AbstractPaginator |
protected int | $perPage | The number of items to be shown per page. |
from AbstractPaginator |
protected int | $currentPage | The current page being "viewed". |
from AbstractPaginator |
protected string | $path | The base path to assign to all URLs. |
from AbstractPaginator |
protected array | $query | The query parameters to add to all URLs. |
from AbstractPaginator |
protected string|null | $fragment | The URL fragment to add to all URLs. |
from AbstractPaginator |
protected string | $pageName | The query string variable used to store the page. |
from AbstractPaginator |
static protected Closure | $currentPathResolver | The current path resolver callback. |
from AbstractPaginator |
static protected Closure | $currentPageResolver | The current page resolver callback. |
from AbstractPaginator |
static protected Closure | $viewFactoryResolver | The view factory resolver callback. |
from AbstractPaginator |
static string | $defaultView | The default pagination view. |
from AbstractPaginator |
static string | $defaultSimpleView | The default "simple" pagination view. |
from AbstractPaginator |
protected int | $total | The total number of items before slicing. |
|
protected int | $lastPage | The last available page. |
Methods
Determine if the given value is a valid page number.
Get / set the URL fragment to be appended to URLs.
Add a set of query string values to the paginator.
Add a query string value to the paginator.
Determine if there are enough items to split into multiple pages.
Set the query string variable used to store the page.
Resolve the current request path or return the default value.
Resolve the current page or return the default value.
Get an instance of the view factory from the resolver.
Set the default "simple" pagination view.
Make dynamic calls into the collection.
Render the contents of the paginator when casting to string.
Create a new paginator instance.
Get the current page for the request.
Render the paginator using the given view.
Render the paginator using the given view.
Get the array of elements to pass to the view.
Get the total number of items being paginated.
Determine if there are more items in the data source.
Get the URL for the next page.
Get the last page.
Get the instance as an array.
Convert the object into something JSON serializable.
Convert the object to its JSON representation.
Details
in
AbstractPaginator at line 106
protected bool
isValidPageNumber(int $page)
Determine if the given value is a valid page number.
in
AbstractPaginator at line 116
string|null
previousPageUrl()
Get the URL for the previous page.
in
AbstractPaginator at line 130
array
getUrlRange(int $start, int $end)
Create a range of pagination URLs.
in
AbstractPaginator at line 143
string
url(int $page)
Get the URL for a given page number.
in
AbstractPaginator at line 170
$this|string|null
fragment(string|null $fragment = null)
Get / set the URL fragment to be appended to URLs.
in
AbstractPaginator at line 188
$this
appends(array|string $key, string|null $value = null)
Add a set of query string values to the paginator.
in
AbstractPaginator at line 203
protected $this
appendArray(array $keys)
Add an array of query string values.
in
AbstractPaginator at line 219
protected $this
addQuery(string $key, string $value)
Add a query string value to the paginator.
in
AbstractPaginator at line 233
protected string
buildFragment()
Build the full fragment portion of a URL.
in
AbstractPaginator at line 243
array
items()
Get the slice of items being paginated.
in
AbstractPaginator at line 253
int
firstItem()
Get the number of the first item in the slice.
in
AbstractPaginator at line 263
int
lastItem()
Get the number of the last item in the slice.
in
AbstractPaginator at line 273
int
perPage()
Get the number of items shown per page.
in
AbstractPaginator at line 283
bool
hasPages()
Determine if there are enough items to split into multiple pages.
in
AbstractPaginator at line 293
bool
onFirstPage()
Determine if the paginator is on the first page.
in
AbstractPaginator at line 303
int
currentPage()
Get the current page.
in
AbstractPaginator at line 313
string
getPageName()
Get the query string variable used to store the page.
in
AbstractPaginator at line 324
$this
setPageName(string $name)
Set the query string variable used to store the page.
in
AbstractPaginator at line 337
$this
withPath(string $path)
Set the base path to assign to all URLs.
in
AbstractPaginator at line 348
$this
setPath(string $path)
Set the base path to assign to all URLs.
in
AbstractPaginator at line 361
static string
resolveCurrentPath(string $default = '/')
Resolve the current request path or return the default value.
in
AbstractPaginator at line 376
static void
currentPathResolver(Closure $resolver)
Set the current request path resolver callback.
in
AbstractPaginator at line 388
static int
resolveCurrentPage(string $pageName = 'page', int $default = 1)
Resolve the current page or return the default value.
in
AbstractPaginator at line 403
static void
currentPageResolver(Closure $resolver)
Set the current page resolver callback.
in
AbstractPaginator at line 413
static Factory
viewFactory()
Get an instance of the view factory from the resolver.
in
AbstractPaginator at line 424
static void
viewFactoryResolver(Closure $resolver)
Set the view factory resolver callback.
in
AbstractPaginator at line 435
static void
defaultView(string $view)
Set the default pagination view.
in
AbstractPaginator at line 446
static void
defaultSimpleView(string $view)
Set the default "simple" pagination view.
in
AbstractPaginator at line 456
ArrayIterator
getIterator()
Get an iterator for the items.
in
AbstractPaginator at line 466
bool
isEmpty()
Determine if the list of items is empty or not.
in
AbstractPaginator at line 476
int
count()
Get the number of items for the current page.
in
AbstractPaginator at line 486
Collection
getCollection()
Get the paginator's underlying collection.
in
AbstractPaginator at line 497
$this
setCollection(Collection $collection)
Set the paginator's underlying collection.
in
AbstractPaginator at line 510
bool
offsetExists(mixed $key)
Determine if the given item exists.
in
AbstractPaginator at line 521
mixed
offsetGet(mixed $key)
Get the item at the given offset.
in
AbstractPaginator at line 533
void
offsetSet(mixed $key, mixed $value)
Set the item at the given offset.
in
AbstractPaginator at line 544
void
offsetUnset(mixed $key)
Unset the item at the given key.
in
AbstractPaginator at line 554
string
toHtml()
Render the contents of the paginator to HTML.
in
AbstractPaginator at line 566
mixed
__call(string $method, array $parameters)
Make dynamic calls into the collection.
in
AbstractPaginator at line 576
string
__toString()
Render the contents of the paginator when casting to string.
at line 41
void
__construct(mixed $items, int $total, int $perPage, int|null $currentPage = null, array $options = [])
Create a new paginator instance.
at line 62
protected int
setCurrentPage(int $currentPage, string $pageName)
Get the current page for the request.
at line 76
string
links(string $view = null, array $data = [])
Render the paginator using the given view.
at line 88
string
render(string|null $view = null, array $data = [])
Render the paginator using the given view.
at line 101
protected array
elements()
Get the array of elements to pass to the view.
at line 119
int
total()
Get the total number of items being paginated.
at line 129
bool
hasMorePages()
Determine if there are more items in the data source.
at line 139
string|null
nextPageUrl()
Get the URL for the next page.
at line 151
int
lastPage()
Get the last page.
at line 161
array
toArray()
Get the instance as an array.
at line 182
array
jsonSerialize()
Convert the object into something JSON serializable.
at line 193
string
toJson(int $options = 0)
Convert the object to its JSON representation.