php分页类与分页函数多种分页样式供选择
Freigeben: 2016-07-25 08:51:37
Original
1211 Leute haben es durchsucht
-
-
/**
- * 页面名称:page_class.php
- */
- class Page {
- private $each_disNums; //每页显示的条目数
- private $nums; //总条目数
- private $current_page; //当前被选中的页
- private $sub_pages; //每次显示的页数
- private $pageNums; //总页数
- private $page_array = array (); //用来构造分页的数组
- private $subPage_link; //每个分页的链接
- /**
- *
- * __construct是SubPages的构造函数,用来在创建类的时候自动运行.
- * @$each_disNums 每页显示的条目数
- * @nums 总条目数
- * @current_num 当前被选中的页
- * @sub_pages 每次显示的页数
- * @subPage_link 每个分页的链接
- * @subPage_type 显示分页的类型
- *
- * 当@subPage_type=1的时候为普通分页模式
- * example:共4523条记录,每页显示10条,当前第1/453页 [首页] [上页] [下页] [尾页]
- * 当@subPage_type=2的时候为经典分页样式
- * example:当前第1/453页 [首页] [上页] 1 2 3 4 5 6 7 8 9 10 [下页] [尾页]
- */
- function Page($each_disNums, $nums, $current_page, $sub_pages, $subPage_link) {
- $this->each_disNums = intval($each_disNums);
- $this->nums = intval($nums);
- if (!$current_page) {
- $this->current_page = 1;
- } else {
- $this->current_page = intval($current_page);
- }
- $this->sub_pages = intval($sub_pages);
- $this->pageNums = ceil($nums / $each_disNums);
- $this->subPage_link = $subPage_link;
- }
- /**
- * 照顾低版本
- */
- function __construct($each_disNums, $nums, $current_page, $sub_pages, $subPage_linke) {
- $this->Page($each_disNums, $nums, $current_page, $sub_pages, $subPage_link);
- }
/*
- __destruct析构函数,当类不在使用的时候调用,该函数用来释放资源。
- */
- function __destruct() {
- unset ($each_disNums);
- unset ($nums);
- unset ($current_page);
- unset ($sub_pages);
- unset ($pageNums);
- unset ($page_array);
- unset ($subPage_link);
- }
/*
- 用来给建立分页的数组初始化的函数。
- */
- function initArray() {
- for ($i = 0; $i sub_pages; $i++) {
- $this->page_array[$i] = $i;
- }
- return $this->page_array;
- }
/*
- construct_num_Page该函数使用来构造显示的条目
- 即使:[1][2][3][4][5][6][7][8][9][10]
- */
- function construct_num_Page() {
- if ($this->pageNums sub_pages) {
- $current_array = array ();
- for ($i = 0; $i pageNums; $i++) {
- $current_array[$i] = $i +1;
- }
- } else {
- $current_array = $this->initArray();
- if ($this->current_page for ($i = 0; $i $current_array[$i] = $i +1;
- }
- }
- elseif ($this->current_page pageNums && $this->current_page > $this->pageNums - $this->sub_pages + 1) {
- for ($i = 0; $i $current_array[$i] = ($this->pageNums) - ($this->sub_pages) + 1 + $i;
- }
- } else {
- for ($i = 0; $i $current_array[$i] = $this->current_page - 2 + $i;
- }
- }
- }
return $current_array;
- }
/*
- 构造普通模式的分页
- 共4523条记录,每页显示10条,当前第1/453页 [首页] [上页] [下页] [尾页]
- */
- function subPageCss1() {
- $subPageCss1Str = "";
- $subPageCss1Str .= "共" . $this->nums . "条记录,";
- $subPageCss1Str .= "每页显示" . $this->each_disNums . "条,";
- $subPageCss1Str .= "当前第" . $this->current_page . "/" . $this->pageNums . "页 ";
- if ($this->current_page > 1) {
- $firstPageUrl = $this->subPage_link . "1";
- $prewPageUrl = $this->subPage_link . ($this->current_page - 1);
- $subPageCss1Str .= "[首页] ";
- $subPageCss1Str .= "[上一页] ";
- } else {
- $subPageCss1Str .= "[首页] ";
- $subPageCss1Str .= "[上一页] ";
- }
if ($this->current_page pageNums) {
- $lastPageUrl = $this->subPage_link . $this->pageNums;
- $nextPageUrl = $this->subPage_link . ($this->current_page + 1);
- $subPageCss1Str .= " [下一页] ";
- $subPageCss1Str .= "[尾页] ";
- } else {
- $subPageCss1Str .= "[下一页] ";
- $subPageCss1Str .= "[尾页] ";
- }
return $subPageCss1Str;
}
/*
- 构造经典模式的分页
- 当前第1/453页 [首页] [上页] 1 2 3 4 5 6 7 8 9 10 [下页] [尾页]
- */
- function subPageCss2() {
- $subPageCss2Str = "";
- $subPageCss2Str .= "当前第" . $this->current_page . "/" . $this->pageNums . "页 ";
if ($this->current_page > 1) {
- $firstPageUrl = $this->subPage_link . "1";
- $prewPageUrl = $this->subPage_link . ($this->current_page - 1);
- $subPageCss2Str .= "[首页] ";
- $subPageCss2Str .= "[上一页] ";
- } else {
- $subPageCss2Str .= "[首页] ";
- $subPageCss2Str .= "[上一页] ";
- }
$a = $this->construct_num_Page();
- for ($i = 0; $i $s = $a[$i];
- if ($s == $this->current_page) {
- $subPageCss2Str .= "[" . $s . "]";
- } else {
- $url = $this->subPage_link . $s;
- $subPageCss2Str .= "[" . $s . "]";
- }
- }
if ($this->current_page pageNums) {
- $lastPageUrl = $this->subPage_link . $this->pageNums;
- $nextPageUrl = $this->subPage_link . ($this->current_page + 1);
- $subPageCss2Str .= " [下一页] ";
- $subPageCss2Str .= "[尾页] ";
- } else {
- $subPageCss2Str .= "[下一页] ";
- $subPageCss2Str .= "[尾页] ";
- }
- return $subPageCss2Str;
- }
- }
//测试两种不同效果
- $t = new Page(10, 100, $_GET['p'], 5, 'page_class.php?p=');
- echo $t->subPageCss2(); //调用经典分页函数
echo " ";
- echo $t->subPageCss1();//调用普通分页函数
-
复制代码
|
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31