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 相关文章推荐
如何开发一个虚拟域名系统
Oct 09 PHP
UCenter中的一个可逆加密函数authcode函数代码
Jul 20 PHP
php生成静态文件的多种方法分享
Jul 17 PHP
php获取网页标题和内容函数(不包含html标签)
Feb 03 PHP
PHP中余数、取余的妙用
Jun 29 PHP
ThinkPHP函数详解之M方法和R方法
Sep 10 PHP
PHP中set error handler函数用法小结
Nov 11 PHP
PHP连接MYSQL数据库的3种常用方法
Feb 27 PHP
PHP实现的数组和XML文件相互转换功能示例
Mar 15 PHP
laravel 多图上传及图片的存储例子
Oct 14 PHP
TP5框架页面跳转样式操作示例
Apr 05 PHP
PHP的imageTtfText()函数深入详解
Mar 03 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
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
Tinymce+jQuery.Validation使用产生的BUG
2010/03/29 Javascript
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
一行命令搞定node.js 版本升级
2014/07/20 Javascript
jquery实现倒计时效果
2015/12/14 Javascript
JS正则替换掉小括号及内容的方法
2016/11/29 Javascript
Vue.js系列之项目结构说明(2)
2017/01/03 Javascript
通过js修改input、select默认字体颜色
2017/04/19 Javascript
Vue.js进行查询操作的实例详解
2017/08/25 Javascript
jQury Ajax使用Token验证身份实例代码
2017/09/22 Javascript
JavaScript寄生组合式继承实例详解
2018/01/06 Javascript
Vue服务端渲染实践之Web应用首屏耗时最优化方案
2019/03/22 Javascript
Vue axios 跨域请求无法带上cookie的解决
2020/09/08 Javascript
[06:33]DOTA2亚洲邀请赛小组赛第二日 TOP10精彩集锦
2015/01/31 DOTA
python概率计算器实例分析
2015/03/25 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
2017/10/13 Python
OPENCV去除小连通区域,去除孔洞的实例讲解
2018/06/21 Python
删除DataFrame中值全为NaN或者包含有NaN的列或行方法
2018/11/06 Python
使用python绘制3维正态分布图的方法
2018/12/29 Python
详解python中递归函数
2019/04/16 Python
Django之提交表单与前后端交互的方法
2019/07/19 Python
django-rest-swagger的优化使用方法
2019/08/29 Python
Django中的FBV和CBV用法详解
2019/09/15 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
Python中__repr__和__str__区别详解
2019/11/07 Python
HTML5 播放 RTSP 视频的实例代码
2019/07/29 HTML / CSS
优质飞蝇钓和渔具:RiverBum
2020/05/10 全球购物
波兰运动鞋网上商店:Distance.pl
2020/07/30 全球购物
EJB的激活机制
2013/10/25 面试题
工商管理本科生求职信
2014/07/13 职场文书
司机岗位职责说明书
2014/07/29 职场文书
党员评议个人总结
2014/10/20 职场文书
教师个人工作总结范文2014
2014/11/10 职场文书
劳动纠纷调解协议书格式
2014/11/30 职场文书
读书笔记格式
2015/07/02 职场文书
交通安全温馨提示语
2015/07/14 职场文书