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 相关文章推荐
phpmyadmin操作流程
Oct 09 PHP
社区(php&amp;&amp;mysql)一
Oct 09 PHP
Discuz 模板语句分析及知识技巧
Aug 21 PHP
php笔记之:数据类型与常量的使用分析
May 14 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 PHP
PHP中的命名空间相关概念浅析
Jan 22 PHP
php遍历删除整个目录及文件的方法
Mar 13 PHP
PHP SESSION的增加、删除、修改、查看操作
Mar 20 PHP
教你在PHPStorm中配置Xdebug
Jul 27 PHP
PHP编程中尝试程序并发的几种方式总结
Mar 21 PHP
PHP实现接收二进制流转换成图片的方法
Jan 10 PHP
自制PHP框架之设计模式
May 07 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
php抓取并保存网站图片的实现代码
2015/10/28 PHP
PHP中通过getopt解析GNU C风格命令行选项
2019/11/18 PHP
JS 常用校验函数
2009/03/26 Javascript
Backbone.js框架中简单的View视图编写学习笔记
2016/02/14 Javascript
快速解决Canvas.toDataURL 图片跨域的问题
2016/05/10 Javascript
实例讲解JavaScript中instanceof运算符的用法
2016/06/08 Javascript
深入浅析javascript中的作用域(推荐)
2016/07/19 Javascript
JQuery获取鼠标进入和离开容器的方向
2016/12/29 Javascript
浅谈angularjs $http提交数据探索
2017/01/20 Javascript
vue模板语法-插值详解
2017/03/06 Javascript
jQuery插件FusionCharts实现的Marimekko图效果示例【附demo源码】
2017/03/24 jQuery
微信小程序商城项目之淘宝分类入口(2)
2017/04/17 Javascript
微信小程序左右滑动的实现代码
2017/12/15 Javascript
vue-cli项目配置多环境的详细操作过程
2018/10/30 Javascript
使用vue2.6实现抖音【时间轮盘】屏保效果附源码
2019/04/24 Javascript
微信小程序实现卡片左右滑动效果的示例代码
2019/05/01 Javascript
vue-router 中 meta的用法详解
2019/11/01 Javascript
Egg Vue SSR 服务端渲染数据请求与asyncData
2019/11/24 Javascript
vue祖孙组件之间的数据传递案例
2020/12/07 Vue.js
解决Python中pandas读取*.csv文件出现编码问题
2019/07/12 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
Python timer定时器两种常用方法解析
2020/01/20 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
python3.7调试的实例方法
2020/07/21 Python
详解如何在PyCharm控制台中输出彩色文字和背景
2020/08/17 Python
Python 里最强的地图绘制神器
2021/03/01 Python
Ted Baker英国官网:男士和女士服装及配件
2017/03/13 全球购物
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
深圳-东方伟业笔试部分
2015/02/11 面试题
低碳生活倡议书
2014/04/14 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
工作违纪检讨书范文
2015/01/26 职场文书
中标通知书
2015/04/17 职场文书
新闻报道稿范文
2015/07/23 职场文书
PHP实现两种排课方式
2021/06/26 PHP
win11如何查看端口是否被占用? Win11查看端口是否占用的技巧
2022/04/05 数码科技