| ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot |
導入導入 – Pager 2.x の使用方法
Pager とは?Pagerは、データの配列にページを付けるクラスです。 入力として受け取り、様々なパラメータによってページ付けを行います。 また、Pagerは、指定された範囲でリンクを生成し、 出力は完全にカスタマイズ可能です(たとえ、 mod_rewriteと併用していても動作します)。 Pager バージョン.1.xと Pager_SlidingのAPIには互換性があります。 例 1この簡単な例は、アルファベット文字の配列を1ページあたり3文字ずつ ページ付けします。そして、前後2ページへのリンクを返します。
<?php
なぜ、$pager->rangeが配列になっているのか、疑問に思うかも知れません。 このキーは現在の範囲でのページ番号で、対応する値はブール型 (キーが現在のページを指しているのであればTRUE、その他はFALSE) です。 この配列は、手動でリンクを生成する際に有効です。 例えば、テンプレートエンジンを使用している場合です。 例 2この例は、mod_rewriteを併用した場合、このクラスをどの様に使用するかを 示しています。 以下のような.htaccessがあるとします。 --------- RewriteEngine on #Options FollowSymlinks RewriteBase / RewriteRule ^articles/([a-z]{1,12})/art([0-9]{1,4})\.html$ /article.php?num=$2&month=$1 [L] --------- これは、"/articles/march/art15.html"のようなURLを、 "/article.php?num=15&month=march"に変換します。
<?php
単一ページ内の複数のページャ単一ページ内で一つ以上のページャを使用するには、 それぞれのページャに異なるurlVar を指定するだけです。
<?php
Pager と巨大な DB 結果セットもし DB 結果セットにページ番号を付けたい場合、 配列に全ての結果をフェッチし Pager に渡すことは、 最良のオプションではないかも知れません。Pager にてこ入れし、ラッパーを使用することで良いパフォーマンスを得ることが できます。パッケージの /docs/examples/ ディレクトリに、PEAR DB 抽象システムのサンプルラッパーがあります。 これはそのまま、もしくは必要に応じてカスタマイズして使用できます。 クエリ文字列に変数を追加するクエリ文字列にいくつかの変数を追加する必要がある場合、 extraVars パラメータを使用します。
<?php
PHP 5ユーザのための重要事項バージョン2.2.1から、PagerはPHP 5でも動作します。 しかし、コンストラクタ (非推奨) の代わりに factory()メソッドを使用する必要があります。
<?php
もし、以前のバージョンを使用しており更新することができないのであれば、 PHP 5では以下のようなコードに書き換える必要があります。
<?php
ページャのチュートリアルPager でできることについて、 より踏み込んで取り上げたオンラインリソースがあります。 PEAR::Pager のチュートリアルです。 |
各種マニュアル:
PHPマニュアル |
PEARマニュアル |
Smarty(英語)マニュアル |
PHP-GTKマニュアル |
「導入」をGoogle検索
|