PHP封装的分页类与简单用法示例


Posted in PHP onFebruary 25, 2019

本文实例讲述了PHP封装的分页类与简单用法。分享给大家供大家参考,具体如下:

分页类的封装如下:

page.php

<?php
//showPage(页号,总页数,分隔符)
function showPage($page,$totalPage,$sep=" "){
  $url = $_SERVER ['PHP_SELF'];      //获取当前路径
  $index = ($page == 1) ? "首页" : "<a href='{$url}?page=1'>首页</a>";
  $last = ($page == $totalPage) ? "尾页" : "<a href='{$url}?page={$totalPage}'>尾页</a>";
  $prevPage=($page>=1)?$page-1:1;
  $nextPage=($page>=$totalPage)?$totalPage:$page+1;
  $prev = ($page == 1) ? "上一页" : "<a href='{$url}?page={$prevPage}'>上一页</a>";
  $next = ($page == $totalPage) ? "下一页" : "<a href='{$url}?page={$nextPage}'>下一页</a>";
  $str = "总共{$totalPage}页/当前是第{$page}页";
  $p="";
  for($i = 1; $i <= $totalPage; $i ++) {
    //当前页无连接
    if ($page == $i) {
      $p .= "[{$i}]";
    } else {
      $p .= "<a href='{$url}?page={$i}'>[{$i}]</a>";
    }
  }
  $pageStr=$str.$sep . $index .$sep. $prev.$sep . $p.$sep . $next.$sep . $last;
  return $pageStr;  //返回分页字符串
}

一个调用分页类的例子

userlist.php

<?php
include "../mysql.php";
include "../page.php";
//连接数据库
$conn=new Mysql();
//
$pageSize=2;    //每页显示的记录数
$sql="select * from user;";
$totalRows=$conn->getResultNum($sql);  //总记录数
$totalPage=ceil($totalRows/$pageSize); //总页数
$page=isset($_REQUEST['page'])?(int)$_REQUEST['page']:1;//当前页数
if($page<1||$page==null||!is_numeric($page)){
  $page=1;
}
if($page>=$totalPage)$page=$totalPage;
$offset=($page-1)*$pageSize;
$sql="select * from user limit {$offset},{$pageSize}";
$result=$conn->sql($sql);
echo "<table style='text-align: center'>";
echo "<tr><td>用户名</td><td>密码</td><td>性别</td><td>邮箱</td></tr>";
foreach ($result as $k=>$v)
{
  echo "<tr><td>{$v['name']}</td>";
  echo "<td>"."{$v['password']}"."</td>";
  echo "<td>{$v['sex']}</td>";
  echo "<td>{$v['email']}</td></tr>";
}
echo "</table>";
echo showPage($page,$totalPage);    //输出页码链接
echo"<hr/>";
//关闭数据库
$conn->close();

运行结果:

PHP封装的分页类与简单用法示例

PHP封装的分页类与简单用法示例

数据库的封装之前写过,这里不在赘述:

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

PHP 相关文章推荐
WML,Apache,和 PHP 的介绍
Oct 09 PHP
PHP去除数组中重复的元素并按键名排序函数
Aug 18 PHP
PHP学习笔记 用户注册模块用户类以及验证码类
Sep 20 PHP
深入解析php中的foreach函数
Aug 31 PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
Jan 28 PHP
php邮箱地址正则表达式验证
Nov 13 PHP
PHP内存缓存功能memcached示例
Oct 19 PHP
PHP获取路径和目录的方法总结【必看篇】
Mar 04 PHP
PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析
Apr 20 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
Apr 21 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
Jun 13 PHP
详解PHP用mb_string处理windows中文字符
May 26 PHP
PHP实现的用户注册表单验证功能简单示例
Feb 25 #PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
Feb 25 #PHP
Laravel核心解读之异常处理的实践过程
Feb 24 #PHP
PHP通过GD库实现验证码功能示例
Feb 23 #PHP
php中file_get_contents()函数用法实例
Feb 21 #PHP
PHP基于mcript扩展实现对称加密功能示例
Feb 21 #PHP
PHP+jQuery实现双击修改table表格功能示例
Feb 21 #PHP
You might like
世界上第一台立体声收音机
2021/03/01 无线电
PHP&amp;MYSQL服务器配置说明
2006/10/09 PHP
Thinkphp3.2.3整合phpqrcode生成带logo的二维码
2016/07/21 PHP
php封装的mysqli类完整实例
2016/10/18 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
PHP中的输出echo、print、printf、sprintf、print_r和var_dump的示例代码
2020/12/01 PHP
浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法
2014/01/10 Javascript
原生javascript实现无间缝滚动示例
2014/01/28 Javascript
JavaScript Serializer序列化时间处理示例
2014/07/31 Javascript
浅谈jQuery 选择器和dom操作
2016/06/07 Javascript
基于JS代码实现导航条弹出式悬浮菜单
2016/06/17 Javascript
jQuery 生成svg矢量二维码
2016/08/09 Javascript
Bootstrap如何激活导航状态
2017/03/22 Javascript
你可能不知道的CORS跨域资源共享
2019/03/13 Javascript
js实现鼠标拖拽div左右滑动
2020/01/15 Javascript
[04:10]2016国际邀请赛中国区预选赛第二日TOP10精彩集锦
2016/06/28 DOTA
[02:42]完美大师赛主赛事淘汰赛第三日观众采访
2017/11/25 DOTA
python通过wxPython打开一个音频文件并播放的方法
2015/03/25 Python
python调用摄像头的示例代码
2020/09/28 Python
马来西亚演唱会订票网站:StubHub马来西亚
2018/10/18 全球购物
研究生自荐信
2013/10/09 职场文书
基层党组织公开承诺书
2014/03/28 职场文书
学校食品安全实施方案
2014/06/14 职场文书
大学生找工作求职信
2014/07/09 职场文书
蛋糕店创业计划书范文
2014/09/21 职场文书
村党支部群众路线教育实践活动对照检查材料
2014/09/26 职场文书
普通党员整改措施
2014/10/24 职场文书
卖房协议书样本
2014/10/30 职场文书
企业宣传语大全
2015/07/13 职场文书
护士工作心得体会
2016/01/25 职场文书
《认识钟表》教学反思
2016/02/16 职场文书
详解vue中v-for的key唯一性
2021/05/15 Vue.js
Vue实现动态查询规则生成组件
2021/05/27 Vue.js
Python 多线程处理任务实例
2021/11/07 Python
Python实现数据的序列化操作详解
2022/07/07 Python
TS 类型兼容教程示例详解
2022/09/23 Javascript