4

pagerange

page_range
SYNOPSIS

page_range($page, $npages, $offset=1)

DESCRIPTION
CODE
  1. function page_range($page, $npages, $offset=1) {
  2.     $range=2*$offset+1;
  3.  
  4.     if ($npages <= $range+$offset) {
  5.         $pagenums=range(1, $npages);
  6.     }
  7.     else if (($page - $offset) <= 2) {
  8.         $pagenums=array_merge(range(1, $range+1), array($npages));
  9.     }
  10.     else if (($page + $offset) >= ($npages-1)) {
  11.         $pagenums=array_merge(array(1), range($npages-$range, $npages));
  12.     }
  13.     else {
  14.         $pagenums=array_merge(array(1), range($page-$offset, $page+$offset), array($npages));
  15.     }
  16.  
  17.     return $pagenums;
  18. }

Comments

Your comment:
[p] [b] [i] [u] [s] [quote] [pre] [br] [code] [url] [email] strip help 2000

Enter a maximum of 2000 characters.
Improve the presentation of your text with the following formatting tags:
[p]paragraph[/p], [b]bold[/b], [i]italics[/i], [u]underline[/u], [s]strike[/s], [quote]citation[/quote], [pre]as is[/pre], [br]line break,
[url]http://www.izend.org[/url], [url=http://www.izend.org]site[/url], [email]izend@izend.org[/email], [email=izend@izend.org]izend[/email],
[code]command[/code], [code=language]source code in c, java, php, html, javascript, xml, css, sql, bash, dos, make, etc.[/code].