PHP tips : ページャを作る

使い方

$pager = make_pager($cur,$max,$span,$url1,$url2);
$cur
現在の表示ページ番号
$max
最大のページ番号(データ総数を1ページ内の行数で割って切り上げたもの)
$span
ページリンクを前後何個作るかの指定(5とした場合は前後5ページ+現在1ページ)
$url1
ページリンクのURLでページ番号の前の部分
$url2
ページリンクのURLでページ番号の後ろの部分(省略可能)

リンクURLはページ番号を $url1 と $url2 で挟んだものになります。sprintf にしなかった理由は、urlencode した文字列で % が入ることを考慮してのことです。

ダウンロード

デザインのカスタマイズ

各ページリンクには、適切なクラス名を付けてありますので、下記の例のようにカスタマイズできます。 リンクの無いページは、span タグに囲まれていますが、クラス名は同じものが付いています。 なお、現在のページには、current というクラス名が付いています。

div.pager {
	margin:           1em 0 1em 0;
	text-align:       center;
}

div.pager .first,
div.pager .prior,
div.pager .page,
div.pager .next,
div.pager .last {
	border:           1px solid gray;
	margin:           0 0.25em 0 0.25em;
	padding:          0 0.5em 0 0.5em;
}

div.pager a:hover,
div.pager .current {
	background-color: #E0E0E0;
	text-decoration:  none;
}

div.pager .leader {
}
first
先頭ページ
prior
前ページ
page
ページ
next
次ページ
last
最終ページ
current
現在ページ
leader
ページの省略(...の部分)