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 相关文章推荐
使用php重新实现PHP脚本引擎内置函数
Mar 06 PHP
PHP 转义使用详解
Jul 15 PHP
php获取当前时间的毫秒数的方法
Jan 26 PHP
php阻止页面后退的方法分享
Feb 17 PHP
php通过ajax实现双击table修改内容
Apr 28 PHP
PHP中exec与system用法区别分析
Sep 22 PHP
ThinkPHP分组下自定义标签库实例
Nov 01 PHP
PHP获取当前相对于域名目录的方法
Jun 26 PHP
php+mysql实现简单的增删改查功能
Jul 13 PHP
PHP中file_exists使用中遇到的问题小结
Apr 05 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
Aug 04 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 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
Ajax+PHP 边学边练之四 表单
2009/11/27 PHP
PHP性能优化准备篇图解PEAR安装
2011/12/05 PHP
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
2014/07/01 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
PDO::prepare讲解
2019/01/29 PHP
Thinkphp自定义生成缩略图尺寸的方法
2019/08/05 PHP
如何在JavaScript中实现私有属性的写类方式(一)
2013/12/04 Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
2014/06/10 Javascript
详谈LABJS按需动态加载js文件
2015/05/07 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
如何使用jquery实现文字上下滚动效果
2016/10/12 Javascript
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
2017/03/30 Javascript
快速解决vue动态绑定多个class的官方实例语法无效的问题
2018/09/05 Javascript
基于vue2.0的活动倒计时组件countdown(附源码下载)
2018/10/09 Javascript
Python中不同进制互相转换(二进制、八进制、十进制和十六进制)
2015/04/05 Python
Python基于百度AI的文字识别的示例
2018/04/21 Python
python输出100以内的质数与合数实例代码
2018/07/08 Python
python getpass模块用法及实例详解
2019/10/07 Python
Python Django form 组件动态从数据库取choices数据实例
2020/05/19 Python
Python内置异常类型全面汇总
2020/05/28 Python
Django 构建模板form表单的两种方法
2020/06/14 Python
澳大利亚美容产品及化妆品在线:Activeskin
2020/06/03 全球购物
法学专业个人求职信
2013/09/26 职场文书
会计毕业生求职简历的自我评价
2013/10/20 职场文书
餐厅总经理岗位职责
2013/12/31 职场文书
大学生表扬信范文
2014/01/09 职场文书
美术第二课堂活动总结
2014/07/08 职场文书
电工实训报告总结
2014/11/05 职场文书
英文产品推荐信
2015/03/27 职场文书
毕业生爱心捐书倡议书
2015/04/27 职场文书
2016国培学习心得体会
2016/01/08 职场文书
2016学习医德医风心得体会
2016/01/25 职场文书
导游词之阳朔遇龙河
2019/12/16 职场文书
nginx location中多个if里面proxy_pass的方法
2021/03/31 Servers
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL
HTML5之高度塌陷问题的解决
2022/06/01 HTML / CSS