Data::Page - ページングの処理を簡単に行う
Data::Pageモジュールはページングの処理を便利にするモジュールです。必要な情報をコンストラクタに与えると、さまざまな情報を取得することができます。
use Data::Page; my $page = Data::Page->new($total_entries, $entries_per_page, $current_page); print " First page: ", $page->first_page, "\n"; print " Last page: ", $page->last_page, "\n"; print "First entry on page: ", $page->first, "\n"; print " Last entry on page: ", $page->last, "\n";
コンストラクタ(new)の第一引数には、結果の総件数を指定します。第二引数には、1ページあたりのエントリ数を指定します。第三引数には、現在のページを指定します。第三引数は省略でき、デフォルトは1です。
取得できる情報
さまざまなメソッドを使って次のような情報が取得できます。
全件数
my $total_entories = $page->total_entries;
全件数を取得するにはtotal_entriesメソッドを使用します。これはコンストラクタの第一引数で与えた値になります。
ページあたりの件数
my $entries_per_page = $page->entries_per_page
ページあたりの件数を取得するにはentries_per_pageメソッドを使用します。これはコンストラクタの第二引数で指定したものと同じです。
現在ページの件数
my $entries_on_this_page = $page->entries_on_this_page
現在ページに含まれている件数を取得するにはentries_on_this_pageメソッドを使用します。「ページあたりの件数」が常に一定の値を返すのに対して、「現在ページの件数」は実際にそのページに含まれる件数を返します。
現在のページ番号
my $current_page = $page->current_page;
現在のページ番号を取得するにはcurrent_pageメソッドを使用します。これはコンストラクタの第三引数で指定したものと同じものです。
最初のページ番号
my $first_page = $page->first_page;
最初のページ番号を取得するにはfirst_pageメソッドを使用します。常に1を返します。
最後のページ番号
my $last_page = $page->last_page;
最後のページ番号を取得するにはlast_pageメソッドを使用します。これは総ページ数と同じ値になります。
現在ページの最初の要素番号
my $first = $page->first;
現在ページの最初の要素番号を取得するにはfirstメソッドを使用します。たとえば全件数が20で、1ページあたりの件数が10で、現在ページが2の場合は、11という数値を返却します。
現在ページの最後の要素番号
my $last = $page->last;
現在ページの最後の要素番号を取得するにはlastメソッドを使用します。たとえば全件数が20で、1ページあたりの件数が10で、現在ページが1の場合は、10という数値を返却します。
前のページ番号
my $previous_page = $page->previous_page;
前のページ番号を取得するにはprevious_pageメソッドを使用します。前のページ番号がない場合はundefを返します。
次のページ番号
my $next_page = $page->next_page;
次のページ番号を取得するにはnext_pageメソッドを使用します。次のページ番号がない場合はundefを返します。