$currentPageNo
$currentPageNo : integer
カレントページ
ページャ
使用例: 【コントローラ】 // インスタンス生成(カレントページを表すGETパラメタ,表示件数,コントローラ) $pager = new Pager($_GET['page'], $limit, $_SERVER['REQUEST_URI']);
【モデル】 // "SQL_CALC_FOUND_ROWS"を付けてSQL文を実行 // SELECTと同時に,LIMITを指定しない場合の全件数がカウントされる $sql = "SELECT SQL_CALC_FOUND_ROWS a, b, c "; $sql.= "FROM t_hoge"; $sql.= "ORDER BY a "; $sql.= "LIMIT = " . $pager -> getLimit() . " "; $sql.= "OFFSET = " . $pager -> getOffset() . " "; $rs = SQLを実行($sql);
// "SQL_CALC_FOUND_ROWS"でカウントした件数を取得
$sql = "SELECT found_rows() rows";
$numOfRows = mysql_query($sql, $db);
// ページャに全件数を設定
$pager -> setTotalItems($numOfRows[0]['rows']);
【コントローラ】 // Smartyテンプレートにassign $smarty -> assign('records', $rs); // 抽出したレコード $smarty -> assign('pager', $pager); // ページャ
【ビュー】 {assign var="firstPage" value=$pager->getFirstPage()} {assign var="prevPage" value=$pager->getPreviousPage()} {assign var="nextPage" value=$pager->getNextPage()} {assign var="lastPage" value=$pager->getLastPage()}
{if $pager->isFirst()}
最初
{else}
<a href="{$firstPage.url}">最初</a>
{/if}
{if $prevPage}
<a href="{$prevPage.url}">前</a>
{else}
前
{/if}
{foreach from=$pager->getPages() item=page}
{if $page.pageNo == $pager->getCurrentPageNo()}
{$page.pageNo}
{else}
<a href="{$page.url}">{$page.pageNo}</a>
{/if}
{/foreach}
{if $nextPage}
<a href="{$nextPage.url}">次</a>
{else}
次
{/if}
{if $pager->isLast()}
最後
{else}
<a href="{$lastPage.url}">最後</a>
{/if}
__construct(integer $currentPageNo = 1, integer $perPage = 10, string $controllerURI = null, string $paramName = "page")
コンストラクタ
integer | $currentPageNo | カレントページ番号.デフォルト1 |
integer | $perPage | ページ内表示件数.デフォルト10件 |
string | $controllerURI | 送信先 |
string | $paramName | (optional) ページ番号を表すパラメタの名前.デフォルトpage |
getPages(integer $visiblePages = null) : array<mixed,\Puyo\Pager\Page>
ページリストを返す
integer | $visiblePages | ページングナビのページ番号の数 |
getCurrentPage() : \Puyo\Pager\Page
カレントページを返す
カレントページ
getNextPage() : \Puyo\Pager\Page
次ページを返す. 次ページがない場合はNullを返す.
次ページ
getPrevPage() : \Puyo\Pager\Page
前ページを返す. 前ページがない場合はNullを返す.
前ページ
getFirstPage() : \Puyo\Pager\Page
先頭ページを返す.
先頭ページ
getLastPage() : \Puyo\Pager\Page
最終ページを返す
最終ページ