PHP----分页类
来源:互联网 发布:建筑绘图软件 编辑:程序博客网 时间:2024/06/13 13:53
类文件<?php/* * $page = new Page(); * echo $page->show(); * 参数1:总记录数 * 参数2:每页的记录数 * 参数3:左边显示的页数 * 参数4:右边显示的页数 * */class Page{ //总的记录数 private $totalNums; //每页条数 private $pageSize; //共多少页 private $totalPages; //当前页码 private $nowPage; //首页 private $firstPage; //尾页 private $lastPage; //上一页 private $prePage; //下一页 private $nextPage; //当前页码的左侧页码 private $numLeft; //当前页码的右侧页码 private $numRight; //设置左侧几个页码 public $lMax; //设置右侧几个页码 public $rMax; //url private $url; //构造方法 public function __construct($totalNums,$pageSize,$lMax,$rMax) { $this->totalNums=$totalNums; $this->pageSize=$pageSize; $this->totalPages = $this->totalPages(); $this->nowPage=$this->getPage(); $this->firstPage=$this->firstPage(); $this->lastPage=$this->lastPage(); $this->prePage=$this->prePage(); $this->nextPage=$this->nextPage(); $this->lMax=$lMax; $this->rMax=$rMax; $this->numLeft=$this->numLeft(); $this->numRight=$this->numRight(); $this->url = $this->url(); } //共几页 private function totalPages(){ $totalPages = ceil($this->totalNums/$this->pageSize); return $totalPages; } //获取当前页码 private function getPage(){ $nowPage = isset($_GET['page'])?$_GET['page']:1; return $nowPage; } //首页 private function firstPage(){ if ($this->nowPage>1){ return "<a href='{$this->url}?page=1'>首页</a>"; }else{ return ""; } } //尾页 private function lastPage(){ if ($this->nowPage<$this->totalPages){ return "<a href='{$this->url}?page={$this->totalPages}'>尾页</a>"; }else{ return ""; } } //上一页 private function prePage(){ $prePage = $this->nowPage-1; //可以上一页,当前页大于1 if ($prePage<1){ return ""; }else{ return "<a href='{$this->url}?page=$prePage'>上一页</a>"; } } //下一页 private function nextPage(){ $nextPage = $this->nowPage+1; //可以下一页 当前页小于总页数 if ($nextPage>$this->totalPages){ return ""; }else{ return "<a href='{$this->url}?page=$nextPage'>下一页</a>"; } } //当前数字页码的左侧页码 private function numLeft(){ $str = ""; for ($i=$this->lMax;$i>=1;$i--){ $p = $this->nowPage-$i; if ($p>=1){ $str.="<a href='{$this->url}?page=$p'>$p</a>"; } } return $str; } //当前数字右侧页码 private function numRight(){ $str = ''; for($i=1;$i<=$this->rMax;$i++){ $p = $this->nowPage+$i; if($p<=$this->totalPages){ $str.=" <a href='{$this->url}?page=$p'>$p</a> "; } } return $str; } //url private function url(){ $url = $_SERVER['REQUEST_SCHEME']."://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; return $url; } //显示页码 public function show(){ return "当前一共有{$this->totalNums} 条记录,每页显示{$this->pageSize}条记录,一共{$this->totalPages}页,当前是第{$this->nowPage}页 {$this->firstPage} {$this->prePage} {$this->numLeft} {$this->nowPage} {$this->numRight} {$this->nextPage} {$this->lastPage} "; }}引用页面
include_once 'page.php';$page = new Page(101,10,2,2);echo $page->show();
阅读全文
0 0
- 【PHP】php 分页类
- PHP分页代码 PHP分页类 PHP分页实例
- 【php基础】PHP分页类
- [PHP实例] PHP分页类
- PHP分页类
- php通用分页类
- 超强PHP分页类
- php分页类
- PHP多功能分页类
- php分页类使用方法
- pageft.php 分页类
- PHP 分页类
- php+oracle 分页类
- php分页类
- PHP分页类
- php分页类
- php分页类
- php分页类扩展
- 使用bootstrap之轮播插件不自动播放的问题和播放时间间隔的问题解决方法
- Nodejs Express4.x开发框架
- 麦肯锡并不神秘,方法论铸就传奇
- DrawerLayout布局代码块,解析网络数据代码块,多条目适配器代码块,字节流转字符串代码块
- js基础
- PHP----分页类
- POJ 1700 Crossing River(贪心)
- http://blog.csdn.net/aaa1050070637/article/details/54913160
- maven工程创建后没有src/main/java目录
- oracle中decode的使用以及如果使用decode进行范围匹配
- 删除系统服务
- tcp-三次握手与四次挥手
- ofbiz后台系统二级菜单的配置——组件菜单
- VC++ 比较字符串是否相等的函数strcmp和wcscmp