本文整理汇总了PHP中Illuminate\Pagination\LengthAwarePaginator::perPage方法的典型用法代码示例。如果您正苦于以下问题:PHP LengthAwarePaginator::perPage方法的具体用法?PHP LengthAwarePaginator::perPage怎么用?PHP LengthAwarePaginator::perPage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Illuminate\Pagination\LengthAwarePaginator
的用法示例。
在下文中一共展示了LengthAwarePaginator::perPage方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: sequence
public function sequence($item)
{
$collections = collect($this->paginator->items());
$index = $collections->search($item) + 1;
$start = (request('page', 1) - 1) * $this->paginator->perPage();
return $start + $index;
}
示例2: pagination
public function pagination(LengthAwarePaginator $paginator)
{
$numStartedOnPage = $paginator->perPage() * ($paginator->currentPage() - 1);
$numEndedOnPage = $numStartedOnPage + $paginator->perPage();
if ($numStartedOnPage == 0) {
$numStartedOnPage = 1;
} elseif ($numStartedOnPage > 0) {
$numStartedOnPage += 1;
}
if ($numEndedOnPage > $paginator->total()) {
$numEndedOnPage = $paginator->total();
}
return '<div class="row">' . '<div class="col-sm-6">Showing <b>' . number_format($numStartedOnPage) . ' to ' . number_format($numEndedOnPage) . '</b> of ' . number_format($paginator->total()) . ' entries</div>' . '<div class="col-sm-6 text-right">' . (new \BibleBowl\Presentation\Pagination($paginator))->render() . '</div>' . '</div>';
}
示例3: afterLoad
public function afterLoad()
{
$linkedWidget = $this->widgetManager->getWidgetById($this->linked_widget_id);
$paginator = null;
if (!is_null($linkedWidget) and $linkedWidget instanceof WidgetPaginator) {
$paginator = new LengthAwarePaginator([], $linkedWidget->getTotalDocuments(), $linkedWidget->list_size);
$paginator->setPageName($this->query_key);
$paginator->setPath(Request::path());
$linkedWidget->list_offset = (int) (($paginator->currentPage() - 1) * $paginator->perPage());
}
$this->paginator = $paginator;
}
示例4: paginatorToArray
/**
* @param LengthAwarePaginator|LengthAwarePaginatorContract $paginator
* @param string $dataKey
*
* @return array
*/
protected function paginatorToArray(LengthAwarePaginator $paginator, $dataKey = 'items')
{
return ['total' => $paginator->total(), 'perPage' => $paginator->perPage(), 'currentPage' => $paginator->currentPage(), 'lastPage' => $paginator->lastPage(), 'nextPageUrl' => $paginator->nextPageUrl(), 'prevPageUrl' => $paginator->previousPageUrl(), 'from' => $paginator->firstItem(), 'to' => $paginator->lastItem(), $dataKey => $paginator->items()];
}
示例5: respondWithPagination
protected function respondWithPagination(LengthAwarePaginator $items, $data)
{
$data = array_merge($data, ['paginator' => ['total_count' => $items->total(), 'total_pages' => ceil($items->total() / $items->perPage()), 'current_page' => $items->currentPage(), 'limit' => $items->perPage()]]);
return $this->respond($data);
}
示例6: formateHatoeasPaged
/**
* @param LengthAwarePaginator $paged
*
* @return PaginatedRepresentation
*/
public function formateHatoeasPaged(LengthAwarePaginator $paged)
{
$request = \App::make('request');
$params = array_merge($request->route()[2], $request->all());
return new PaginatedRepresentation(new CollectionRepresentation($paged->getCollection(), null, $request->path()), $request->route()[1]['as'], $params, $paged->currentPage(), $paged->perPage(), $paged->lastPage(), 'page', 'per_page', true, $paged->total());
}
示例7: Paginator
$useLengthAware = true;
// Paginator class example
if (!$useLengthAware) {
$paginatorItems = array_slice($items, $offset);
$results = new Paginator($paginatorItems, $perPage, $currentPage, $options);
}
// End of Paginator example
// LengthAwarePaginator class example
if ($useLengthAware) {
$lengthAwarePaginatorItems = array_slice($items, $offset, $perPage);
$results = new LengthAwarePaginator($lengthAwarePaginatorItems, $total, $perPage, $currentPage, $options);
}
// End of LengthAwarePaginator example
// Display a paginated table of our array
echo '<h1>I love hashes</h1>';
echo '<table>';
foreach ($results as $result) {
echo "\n <tr>\n <td>{$result['id']}</td>\n <td>{$result['hash']}</td>\n </tr>";
}
echo '<table>' . "\n";
echo $results->appends($_GET)->render();
echo 'Current Page: ' . $results->currentPage();
echo '<br>Items Per Page: ' . $results->perPage();
// The following methods are only available when using the LengthAwarePaginator instance
if ($useLengthAware) {
echo '<br>From ' . $results->firstItem() . ' to ' . $results->lastItem();
echo '<br>Total Items: ' . $results->total();
echo '<br>Last Page: ' . $results->lastPage();
}
});
$app->run();
示例8: isPageInRange
/**
* Is this current page in range?
*
* @param \Illuminate\Pagination\LengthAwarePaginator $paginator
*
* @return bool
*/
protected function isPageInRange(LengthAwarePaginator $paginator)
{
return $paginator->currentPage() <= ceil($paginator->lastItem() / $paginator->perPage());
}
示例9: wrapPager
public static function wrapPager(LengthAwarePaginator $pager)
{
$collection = static::wrapCollection($pager->getCollection());
return new LengthAwarePaginator($collection, $pager->total(), $pager->perPage(), $pager->currentPage());
}
示例10: respondWithPagination
/**
* @param LengthAwarePaginator $paginatorData
* @param $data
*
* @return mixed
*/
public function respondWithPagination(LengthAwarePaginator $paginatorData, $data)
{
$data = array_merge($data, ['paginator' => ['total_count' => $paginatorData->total(), 'total_pages' => ceil($paginatorData->total() / $paginatorData->perPage()), 'current_page' => $paginatorData->currentPage(), 'limit' => $paginatorData->count(), 'next_page_url' => $paginatorData->nextPageUrl()]]);
return $this->respond($data);
}
示例11: paginate
public function paginate(LengthAwarePaginator $paginator)
{
return ["count" => $paginator->count(), "current_page" => $paginator->currentPage(), "last_page" => $paginator->lastPage(), "per_page" => $paginator->perPage(), "total" => $paginator->total()];
}
示例12: buildHeaderLinks
/**
* [buildHeaderLinks description]
* @param Paginator $collection [description]
* @return [type] [description]
*/
private function buildHeaderLinks(Paginator $collection)
{
$links = array();
if ($collection->nextPageUrl()) {
$links[] = $this->buildHeaderLink('next', $collection->nextPageUrl(), $collection->perPage());
}
if ($collection->previousPageUrl()) {
$links[] = $this->buildHeaderLink('prev', $collection->previousPageUrl(), $collection->perPage());
}
$links[] = $this->buildHeaderLink('first', $collection->url(1), $collection->perPage());
$links[] = $this->buildHeaderLink('last', $collection->url($collection->lastPage()), $collection->perPage());
return join($links, ", ");
}
示例13: respondWithPagination
/**
* @param $products
* @return \Illuminate\Http\JsonResponse
*/
public function respondWithPagination(Paginator $products, $data)
{
$data = array_merge($data, ['paginator' => ['total_count' => $products->total(), 'total_pages' => ceil($products->total() / $products->perPage()), 'current_page' => $products->currentPage(), 'limit' => $products->perPage()]]);
return $this->respond($data);
}
示例14: tableNavStatus
/**
* @param LengthAwarePaginator $paginated_list
* @return string
*/
public function tableNavStatus(LengthAwarePaginator $paginated_list)
{
return trans('global.table_list.results.status', ['start' => $paginated_list->perPage() * ($paginated_list->currentPage() - 1) + 1, 'stop' => $paginated_list->count() + ($paginated_list->currentPage() - 1) * $paginated_list->perPage(), 'total' => $paginated_list->total()]);
}