コード例 #1
0
ファイル: index.php プロジェクト: anteriovieira/Torch
    $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();
コード例 #2
0
 /**
  * @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()];
 }
コード例 #3
0
 /**
  * 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());
 }