\Puyo\PagerPager

ページャ

使用例: 【コントローラ】 // インスタンス生成(カレントページを表す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}

Summary

Methods
Properties
Constants
__construct()
getCurrentPageNo()
setCurrentPageNo()
setLimit()
getTotalNums()
setTotalNums()
getLimit()
getOffset()
getTotalPageNums()
getPages()
getPagesAsArray()
getCurrentPage()
getCurrentPageAsArray()
getNextPage()
getNextPageAsArray()
getPrevPage()
getPrevPageAsArray()
getFirstPage()
getFirstPageAsArray()
getLastPage()
getLastPageAsArray()
isFirst()
isLast()
getStartItemNo()
getLastItemNo()
No public properties found
No constants found
No protected methods found
No protected properties found
N/A
No private methods found
$currentPageNo
$perPage
$totalItems
$visiblePages
$controllerURI
$paramName
N/A

Properties

$currentPageNo

$currentPageNo : integer

カレントページ

Type

integer

$perPage

$perPage : integer

ページ内件数

Type

integer

$totalItems

$totalItems : integer

全レコード数

Type

integer

$visiblePages

$visiblePages : integer

表示するページ数

Type

integer

$controllerURI

$controllerURI : string

コントローラのファイル名/path

Type

string

$paramName

$paramName : string

ページ番号を表すパラメータの名前

Type

string

Methods

__construct()

__construct(integer  $currentPageNo = 1, integer  $perPage = 10, string  $controllerURI = null, string  $paramName = "page") 

コンストラクタ

Parameters

integer $currentPageNo

カレントページ番号.デフォルト1

integer $perPage

ページ内表示件数.デフォルト10件

string $controllerURI

送信先

string $paramName

(optional) ページ番号を表すパラメタの名前.デフォルトpage

getCurrentPageNo()

getCurrentPageNo() : integer

カレントのページ番号を返す

Returns

integer —

ページ番号

setCurrentPageNo()

setCurrentPageNo(integer  $pageNo) 

カレントページ番号を設定する

Parameters

integer $pageNo

setLimit()

setLimit(integer  $perPage) 

ページ内件数を設定する

Parameters

integer $perPage

getTotalNums()

getTotalNums() 

全レコード数を返す

setTotalNums()

setTotalNums(integer  $totalNums) 

全レコード数を設定する

Parameters

integer $totalNums

getLimit()

getLimit() : integer

ページ内件数を返す.

Returns

integer —

ページ内件数

getOffset()

getOffset() : integer

オフセットを返す.

Returns

integer —

オフセット

getTotalPageNums()

getTotalPageNums() : integer

全ページ数を返す

Returns

integer —

全ページ数

getPages()

getPages(integer  $visiblePages = null) : array<mixed,\Puyo\Pager\Page>

ページリストを返す

Parameters

integer $visiblePages

ページングナビのページ番号の数

Returns

array<mixed,\Puyo\Pager\Page>

getPagesAsArray()

getPagesAsArray(  $visiblePages = null) 

Parameters

$visiblePages

getCurrentPage()

getCurrentPage() : \Puyo\Pager\Page

カレントページを返す

Returns

\Puyo\Pager\Page

カレントページ

getCurrentPageAsArray()

getCurrentPageAsArray() : array

カレントページを配列で返す

Returns

array —

カレントページ

getNextPage()

getNextPage() : \Puyo\Pager\Page

次ページを返す. 次ページがない場合はNullを返す.

Returns

\Puyo\Pager\Page

次ページ

getNextPageAsArray()

getNextPageAsArray() : array|null

次ページを配列で返す. 次ページがない場合はNullを返す.

Returns

array|null —

次ページ

getPrevPage()

getPrevPage() : \Puyo\Pager\Page

前ページを返す. 前ページがない場合はNullを返す.

Returns

\Puyo\Pager\Page

前ページ

getPrevPageAsArray()

getPrevPageAsArray() 

getFirstPage()

getFirstPage() : \Puyo\Pager\Page

先頭ページを返す.

Returns

\Puyo\Pager\Page

先頭ページ

getFirstPageAsArray()

getFirstPageAsArray() 

getLastPage()

getLastPage() : \Puyo\Pager\Page

最終ページを返す

Returns

\Puyo\Pager\Page

最終ページ

getLastPageAsArray()

getLastPageAsArray() 

isFirst()

isFirst() : boolean

カレントページが先頭ページであるか否かを返す

Returns

boolean —

先頭ページであるか否か

isLast()

isLast() : boolean

カレントページが最終ページであるか否かを返す

Returns

boolean —

最終ページであるか否か

getStartItemNo()

getStartItemNo() : integer

表示中のアイテムが何件目からかを返す(Smarty Template用)

Returns

integer —

何件目か

getLastItemNo()

getLastItemNo() : integer

表示中のアイテムが何件目までかを返す(Smarty Template用)

Returns

integer —

何件目か