PHP基于数组实现的分页函数实例


Posted in PHP onAugust 20, 2014

分页功能是PHP程序设计中非常常见的功能,不同于以往的,今天本文介绍的是PHP基于数组实现的分页函数。

关于数组的分页函数,用数组进行分页的好处是可以方便的进行联合多表查询,只需要将查询的结果放在数组中就可以了以下是数组分页的函数,函数page_array用于数组的分页,函数show_array用于分页函数的操作及显示,需要配合使用。两个函数通过全局变量$countpage发生联系,此变量用于跟踪总页码数。

具体实例代码如下:

<?php
/**
 * 数组分页函数 核心函数 array_slice
 * 用此函数之前要先将数据库里面的所有数据按一定的顺序查询出来存入数组中
 * $count  每页多少条数据
 * $page  当前第几页
 * $array  查询出来的所有数组
 * order 0 - 不变   1- 反序
 */ 
function page_array($count,$page,$array,$order){
  global $countpage; #定全局变量
  $page=(empty($page))?'1':$page; #判断当前页面是否为空 如果为空就表示为第一页面 
    $start=($page-1)*$count; #计算每次分页的开始位置
  if($order==1){
   $array=array_reverse($array);
  }  
  $totals=count($array); 
  $countpage=ceil($totals/$count); #计算总页面数
  $pagedata=array();
 $pagedata=array_slice($array,$start,$count);
  return $pagedata; #返回查询数据
}
/**
 * 分页及显示函数
 * $countpage 全局变量,照写
 * $url 当前url
 */
function show_array($countpage,$url){
   $page=empty($_GET['page'])?1:$_GET['page'];
 if($page > 1){
   $uppage=$page-1;
 }else{
  $uppage=1;
 }
 if($page < $countpage){
   $nextpage=$page+1;

 }else{
   $nextpage=$countpage;
 }
    $str='<div style="border:1px; width:300px; height:30px; color:#9999CC">';
 $str.="<span>共 {$countpage} 页 / 第 {$page} 页</span>";
 $str.="<span><a href='$url?page=1'>  首页 </a></span>";
 $str.="<span><a href='$url?page={$uppage}'> 上一页 </a></span>";
 $str.="<span><a href='$url?page={$nextpage}'>下一页 </a></span>";
 $str.="<span><a href='$url?page={$countpage}'>尾页 </a></span>";
 $str.='</div>';
 return $str;
}
?>

希望本文所述实例对大家的PHP程序设计能起到一定的借鉴作用。

PHP 相关文章推荐
桌面中心(三)修改数据库
Oct 09 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
Dec 29 PHP
phpmyadmin 常用选项设置详解版
Mar 07 PHP
PHP在字符断点处截断文字的实现代码
Apr 21 PHP
php程序的国际化实现方法(利用gettext)
Aug 14 PHP
PHP静态文件生成类实例
Nov 29 PHP
PHP学习笔记(一):基本语法之标记、空白、和注释
Apr 17 PHP
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
Jul 06 PHP
yii2控制器Controller Ajax操作示例
Jul 23 PHP
PHP实现的网站目录扫描索引工具
Sep 08 PHP
利用php-cli和任务计划实现订单同步功能的方法
May 03 PHP
PHP设计模式之适配器模式原理与用法分析
Apr 25 PHP
PHP中读取照片exif信息的方法
Aug 20 #PHP
PHP函数eval()介绍和使用示例
Aug 20 #PHP
PHP命令行脚本接收传入参数的三种方式
Aug 20 #PHP
PHP中IP地址与整型数字互相转换详解
Aug 20 #PHP
PHP函数http_build_query使用详解
Aug 20 #PHP
PHP函数in_array()使用详解
Aug 20 #PHP
PHP中使用json数据格式定义字面量对象的方法
Aug 20 #PHP
You might like
一个PHP模板,主要想体现一下思路
2006/12/25 PHP
discuz Passport 通行证 整合笔记
2008/06/30 PHP
php xml留言板 xml存储数据的简单例子
2009/08/24 PHP
php程序总是提示验证码输入有误解决方案
2015/01/07 PHP
PHP提高编程效率的20个要点
2015/09/23 PHP
WordPress的文章自动添加关键词及关键词的SEO优化
2016/03/01 PHP
Yii2实现上下联动下拉框功能的方法
2016/08/10 PHP
说说JSON和JSONP 也许你会豁然开朗
2012/09/02 Javascript
nodejs中转换URL字符串与查询字符串详解
2014/11/26 NodeJs
网页收藏夹显示ICO图标(代码少)
2015/08/04 Javascript
jQuery插件制作的实例教程
2016/05/16 Javascript
微信小程序开发教程-手势解锁实例
2017/01/06 Javascript
简单的Vue SSR的示例代码
2018/01/12 Javascript
使用iView Upload 组件实现手动上传图片的示例代码
2018/10/01 Javascript
vue-cli 3 全局过滤器的实例代码详解
2019/06/03 Javascript
JS检索下拉列表框中被选项目的索引号(selectedIndex)
2019/12/17 Javascript
微信小程序按顺序同步执行的两种方式
2019/12/20 Javascript
js函数柯里化的方法和作用实例分析
2020/04/11 Javascript
Openlayers实现扩散的动态点(水纹效果)
2020/08/17 Javascript
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
python实现360皮肤按钮控件示例
2014/02/21 Python
python实现井字棋游戏
2020/03/30 Python
Python下载网络小说实例代码
2018/02/03 Python
Python pip 安装与使用(安装、更新、删除)
2019/10/06 Python
Python中BeautifulSoup通过查找Id获取元素信息
2020/12/07 Python
玩具反斗城西班牙网上商城:ToysRUs西班牙
2017/01/19 全球购物
英国旅游额外服务市场领导者:Holiday Extras(机场停车场、酒店、接送等)
2017/10/07 全球购物
墨西哥皇宫度假村预订:Palace Resorts
2018/06/16 全球购物
T3官网:头发造型工具
2019/12/26 全球购物
优秀的计算机专业求职信范文
2013/12/27 职场文书
民族团结先进个人事迹材料
2014/06/02 职场文书
大专应届毕业生求职信
2014/07/15 职场文书
酒店管理失职检讨书
2014/09/16 职场文书
村委会贫困证明范本
2014/09/17 职场文书
2015毕业设计工作总结
2015/07/24 职场文书
python爬虫请求库httpx和parsel解析库的使用测评
2021/05/10 Python