代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
PHP
】
PHP分页类
作者:
讷言
/ 发布于
2014/5/20
/
619
<?php /*********************************************** * @类名: page * @参数: $myde_total - 总记录数 * $myde_size - 一页显示的记录数 * $myde_page - 当前页 * $myde_url - 获取当前的url * @功能: 分页实现 * @作者: 宋海阁 */ class page { private $myde_total; //总记录数 private $myde_size; //一页显示的记录数 private $myde_page; //当前页 private $myde_page_count; //总页数 private $myde_i; //起头页数 private $myde_en; //结尾页数 private $myde_url; //获取当前的url /* * $show_pages * 页面显示的格式,显示链接的页数为2*$show_pages+1。 * 如$show_pages=2那么页面上显示就是[首页] [上页] 1 2 3 4 5 [下页] [尾页] */ private $show_pages; public function __construct($myde_total=1,$myde_size=1,$myde_page=1,$myde_url,$show_pages=2){ $this->myde_total = $this->numeric($myde_total); $this->myde_size = $this->numeric($myde_size); $this->myde_page = $this->numeric($myde_page); $this->myde_page_count = ceil($this->myde_total/$this->myde_size); $this->myde_url = $myde_url; if($this->myde_total<0) $this->myde_total=0; if($this->myde_page<1) $this->myde_page=1; if($this->myde_page_count<1) $this->myde_page_count=1; if($this->myde_page>$this->myde_page_count) $this->myde_page=$this->myde_page_count; $this->limit = ($this->myde_page-1)*$this->myde_size; $this->myde_i=$this->myde_page-$show_pages; $this->myde_en=$this->myde_page+$show_pages; if($this->myde_i<1){ $this->myde_en=$this->myde_en+(1-$this->myde_i); $this->myde_i=1; } if($this->myde_en>$this->myde_page_count){ $this->myde_i = $this->myde_i-($this->myde_en-$this->myde_page_count); $this->myde_en=$this->myde_page_count; } if($this->myde_i<1)$this->myde_i=1; } //检测是否为数字 private function numeric($num){ if(strlen($num)){ if(!preg_match("/^[0-9]+$/",$num)){ $num=1; }else{ $num = substr($num,0,11); } }else{ $num=1; } return $num; } //地址替换 private function page_replace($page){ return str_replace("{page}",$page,$this->myde_url); } //首页 private function myde_home(){ if($this->myde_page!=1){ return "<a href="".$this->page_replace(1)."" title="首页">首页</a>"; }else{ return "首页"; } } //上一页 private function myde_prev(){ if($this->myde_page!=1){ return "<a href="".$this->page_replace($this->myde_page-1)."" title="上一页">上一页</a>"; }else{ return "上一页"; } } //下一页 private function myde_next(){ if($this->myde_page!=$this->myde_page_count){ return "<a href="".$this->page_replace($this->myde_page+1)."" title="下一页">下一页</a>"; }else{ return"下一页"; } } //尾页 private function myde_last(){ if($this->myde_page!=$this->myde_page_count){ return "<a href="".$this->page_replace($this->myde_page_count)."" title="尾页">尾页</a>"; }else{ return "尾页"; } } //输出 public function myde_write($id='page'){ $str ="<div id="".$id."">"; $str.=$this->myde_home(); $str.=$this->myde_prev(); if($this->myde_i>1){ $str.="<p class="pageEllipsis">..."; } for($i=$this->myde_i;$i<=$this->myde_en;$i++){ if($i==$this->myde_page){ $str.="<a href="".$this->page_replace($i)."" title="第".$i."页" class="cur">$i</a>"; }else{ $str.="<a href="".$this->page_replace($i)."" title="第".$i."页">$i</a>"; } } if( $this->myde_en<$this->myde_page_count ){ $str.="<p class="pageEllipsis">..."; } $str.=$this->myde_next(); $str.=$this->myde_last(); $str.="<p class="pageRemark">共<b>".$this->myde_page_count. "</b>页<b>".$this->myde_total."</b>条数据"; $str.="</div>"; return $str; } } ?>
试试其它关键字
PHP分页
同语言下
.
用net匹配并替换iOS标准的emoji表情符号
.
处理带Emoji表情的的字符串
.
获取微信昵称时 过滤特殊字符
.
通过判断上传文件的头字符来判断文件的类型
.
模拟百度URL加密解密算法
.
以太坊检查地址是否合法
.
实现crontab解析类
.
获取每个月的开始和结束时间
.
图片上传工具类
.
APP手机应用信息采集
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
讷言
贡献的其它代码
(
2
)
.
CSS自定义文件上传按钮样式,兼容主流浏览器
.
PHP分页类
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3