php封装的page分页类完整实例


Posted in PHP onOctober 18, 2016

本文实例讲述了php封装的page分页类。分享给大家供大家参考,具体如下:

类文件:

<?php
  //分页工具类
  class Page{
    /*
     * 获取分页字符串
     * @param1 string $uri,分页要请求的脚本url
     * @param3 int $counts,总记录数
     * @param4 int $length,每页显示的记录数
     * @param5 int $page = 1,当前页码
     * @return string,带有a标签的,可以点击发起请求的字符串
    */
    public static function getPageStr($uri,$counts,$length,$page = 1){
      //构造一个能够点击的字符串
      //得到数据显示的字符串
      $pagecount = ceil($counts/$length);        //总页数
      $str_info = "当前一共有{$counts}条记录,每页显示{$length}条记录,一共{$pagecount}页,当前是第{$page}页";
      //生成可以操作的连接:首页 上一页 下一页 末页
      //求出上一页和下一页页码
      $prev = ($page <= 1) ? 1 : $page - 1;
      $next = ($page >= $pagecount) ? $pagecount : $page + 1;
      $str_click = <<<END
        <a href="{$uri}?page=1">首页</a>
        <a href="{$uri}?page={$prev}">上一页</a>
        <a href="{$uri}?page={$next}">下一页</a>
        <a href="{$uri}?page={$pagecount}">末页</a>
END;
      //按照页码分页字符串
      $str_number = '';
      for($i = 1;$i <= $pagecount;$i++){
        $str_number .= "<a href='{$uri}?page={$i}'>{$i}</a> ";
      }
      //下拉框分页字符串:利用js的onchang事件来改变当前脚本的href
      $str_select = "<select onchange=\"location.href='{$uri}?page='+this.value\">";
      //将所有的页码放入到option
      for($i = 1;$i <= $pagecount;$i++){
        if($i == $page)
          $str_select .= "<option value='{$i}' selected='selected'>{$i}</option>";
        else
          $str_select .= "<option value='{$i}'>{$i}</option>";
      }
      $str_select .= "</select>";
      //返回值
      return $str_info . $str_click . $str_number . $str_select;
    }
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
多文件上传的例子
Oct 09 PHP
oracle资料库函式库
Oct 09 PHP
PHP中函数内引用全局变量的方法
Oct 20 PHP
让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享
Aug 08 PHP
php中3des加密代码(完全与.net中的兼容)
Aug 02 PHP
PHP判断一个gif图片是否为动态图片的方法
Nov 19 PHP
php微信支付之APP支付方法
Mar 04 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
Mar 03 PHP
php面向对象值单例模式
May 03 PHP
php遍历目录下文件并按修改时间排序操作示例
Jul 12 PHP
laravel 解决强制跳转 https的问题
Oct 22 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 PHP
php封装的单文件(图片)上传类完整实例
Oct 18 #PHP
Thinkphp实现短信验证注册功能
Oct 18 #PHP
php基于单例模式封装mysql类完整实例
Oct 18 #PHP
php封装的mysqli类完整实例
Oct 18 #PHP
PHP实现文件上传下载实例
Oct 18 #PHP
Yii实现文章列表置顶功能示例
Oct 18 #PHP
Yii统计不同类型邮箱数量的方法
Oct 18 #PHP
You might like
用PHP编程语言开发动态WAP页面
2006/10/09 PHP
PHP中的魔术方法总结和使用实例
2015/05/11 PHP
php生成图片验证码-附五种验证码
2015/08/19 PHP
php批量删除操作代码分享
2017/02/26 PHP
php7 安装yar 生成docker镜像
2017/05/09 PHP
php实现的二叉树遍历算法示例
2017/06/15 PHP
让您的菜单不离网站
2006/10/03 Javascript
用Javascript做flash做的事..才完成的一个类.Auntion Action var 0.1
2007/02/23 Javascript
使用Json比用string返回数据更友好,也更面向对象一些
2011/09/13 Javascript
jquery使用Cookie和JSON记录用户最近浏览历史
2016/04/19 Javascript
js enter键激发事件实例代码
2016/08/17 Javascript
浅析javaScript中的浅拷贝和深拷贝
2017/02/15 Javascript
详解Vue.use自定义自己的全局组件
2017/06/14 Javascript
Angular.js实现获取验证码倒计时60秒按钮的简单方法
2017/10/18 Javascript
详解vue 计算属性与方法跟侦听器区别(面试考点)
2018/04/23 Javascript
微信小程序时间控件picker view使用详解
2018/12/28 Javascript
vue + typescript + video.js实现 流媒体播放 视频监控功能
2019/07/07 Javascript
jQuery实现雪花飘落效果
2020/08/02 jQuery
JS时间戳与日期格式互相转换的简单方法示例
2021/01/30 Javascript
[01:46]新英雄登场
2019/09/10 DOTA
python实现excel读写数据
2021/03/02 Python
对Python3中的input函数详解
2018/04/22 Python
python requests 测试代理ip是否生效
2018/07/25 Python
JSON文件及Python对JSON文件的读写操作
2018/10/07 Python
爬虫代理池Python3WebSpider源代码测试过程解析
2019/12/20 Python
浅谈css3新单位vw、vh、vmin、vmax的使用详解
2017/12/01 HTML / CSS
利用Storage Event实现页面间通信的示例代码
2018/07/26 HTML / CSS
Paul’s Boutique官网:英国时尚手袋品牌
2018/03/31 全球购物
英国名牌服装购物网站:OD’s Designer
2019/09/02 全球购物
端口镜像是怎么实现的
2014/03/25 面试题
大二自我鉴定范文
2013/10/05 职场文书
互联网电子商务专业毕业生求职信
2014/03/18 职场文书
大学生实习证明范文(5篇)
2014/09/18 职场文书
2015年纪委工作总结
2015/05/13 职场文书
驳回起诉裁定书
2015/05/19 职场文书
人民的好儿女观后感
2015/06/18 职场文书