3) ページング処理–Pager
Webアプリケーションで検索結果などを表示する場合、1ページですべて表示するよりも複数ページに分割すると読みやすくなります。Pagerライブラリーを使用すると、このようなページング処理を簡単に実現することができます。
インターネットリサーチ・コンサルティング・企画、ウェブ翻訳から、Web制作、システム開発までオープンソース・ネットワークビジネスを提供
1ページに表示
まず、10件のデータを1ページに表示してみましょう。
<?php $data = array(
'1件目のデータ',
'2件目のデータ',
'3件目のデータ',
'4件目のデータ',
'5件目のデータ',
'6件目のデータ',
'7件目のデータ',
'8件目のデータ',
'9件目のデータ',
'10件目のデータ'); ---(1)
foreach ($data as $val) {
echo $val . '<br>'; ---(2)
}
?>
(1):10件のデータを配列に格納します
(2):順番にデータを表示します
ブラウザーからこのファイルにアクセスしてみると、10件のデータが1ページに表示されます。

ページング処理
このデータを1ページ4件ずつ3ページで表示するようにページング処理します。
<?php $data = array(
'1件目のデータ',
'2件目のデータ',
'3件目のデータ',
'4件目のデータ',
'5件目のデータ',
'6件目のデータ',
'7件目のデータ',
'8件目のデータ',
'9件目のデータ',
'10件目のデータ');
require_once 'Pager/Pager.php'; ---(1)
$params = array( ---(2)
'itemData' => $data, ---(3)
'perPage' => 4 ---(4)
);
$pager = & Pager::factory($params); ---(5)
$pages = $pager->getPageData(); ---(6)
$links = $pager->getLinks(); ---(7)
foreach ($pager->getPageData() as $val) {
echo $val . '<br>'; ---(8)
}
echo '<p>' . $links['all'] . '</p>'; ---(9)
?>
(1):Pagerライブラリーを読み込みます
(2):Pagerオブジェクトの生成に必要なオプションを設定します
(3):itemDataパラメータにはページング対象データを指定します
(4):perPageパラメータには1ページあたりに表示する件数を指定します
(5):オプションを指定してPagerオブジェクトを生成します
(6):PagerオブジェクトのgetPageData ()メソッドでカレントページに表示するデータを取得します
(7):PagerオブジェクトのgetLinks ()メソッドでページリンク情報を取得します
(8):カレントページのデータを出力します
(9):ページリンクを表示します
ブラウザーからこのファイルにアクセスしてみると、1ページ4件ずつ3ページで表示するようにページング処理されたことが確認できます。

1ページ目 2ページ目 3ページ目
このように、Pagerライブラリーを使うと、ほんの数行加えるだけで有名検索サイトのようなユーザビリティが実現できます。
次回は、認証処理を簡単に行えるAuthパッケージをご紹介します。


