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 相关文章推荐
在PHP中读取和写入WORD文档的代码
Apr 09 PHP
php 删除无限级目录与文件代码共享
Nov 22 PHP
Optimizer与Debugger兼容性问题的解决方法
Dec 01 PHP
PHP 数组入门教程小结
May 20 PHP
Laravel框架学习笔记(一)环境搭建
Oct 15 PHP
php可应用于面包屑导航的迭代寻找家谱树实现方法
Feb 02 PHP
Laravel5中contracts详解
Mar 02 PHP
PHP中is_file()函数使用指南
May 08 PHP
Yii2分页的使用及其扩展方法详解
May 23 PHP
laravel 5.3中自定义加密服务的方案详解
May 09 PHP
php 使用mpdf实现指定字段配置字体样式的方法
Jul 29 PHP
PHP读取文件或采集时解决中文乱码
Mar 09 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生成Flash动画的实现代码
2010/03/12 PHP
joomla内置的表单验证功能使用方法
2010/06/11 PHP
PHP获取POST数据的几种方法汇总
2015/03/03 PHP
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
Laravel框架Request、Response及Session操作示例
2019/05/06 PHP
鼠标图片振动代码
2006/07/06 Javascript
js图片延迟加载的实现方法及思路
2013/07/22 Javascript
jquery slibings选取同级其他元素的实现代码
2013/11/15 Javascript
jQuery页面加载初始化常用的三种方法
2014/06/04 Javascript
使用focus方法让光标默认停留在INPUT框
2014/07/29 Javascript
详解JavaScript操作HTML DOM的基本方式
2015/10/21 Javascript
必备的JS调试技巧汇总
2016/07/20 Javascript
Bootstrap基本插件学习笔记之轮播幻灯片(23)
2016/12/08 Javascript
angular 基于ng-messages的表单验证实例
2017/05/04 Javascript
强大的JavaScript响应式图表Chartist.js的使用
2017/09/13 Javascript
vue实现图片滚动的示例代码(类似走马灯效果)
2018/03/03 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
记一次Vue.js混入mixin的使用(分权限管理页面)
2019/04/17 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
Vue检测屏幕变化来改变不同的charts样式实例
2020/10/26 Javascript
python 平衡二叉树实现代码示例
2018/07/07 Python
python实现C4.5决策树算法
2018/08/29 Python
python+opencv实现阈值分割
2018/12/26 Python
在Python中使用turtle绘制多个同心圆示例
2019/11/23 Python
django model object序列化实例
2020/03/13 Python
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
英国Zoro工具:手动工具,电动工具和个人防护用品
2016/11/02 全球购物
监理员的岗位职责
2013/11/13 职场文书
职工运动会邀请函
2014/01/19 职场文书
给水工程专业毕业生自荐信
2014/01/28 职场文书
古汉语文学求职信范文
2014/03/16 职场文书
2014年学雷锋活动总结
2014/06/26 职场文书
人力资源管理专业求职信
2014/07/23 职场文书
裁员通知
2015/04/25 职场文书
详解Oracle块修改跟踪功能
2021/11/07 Oracle
TypeScript实用技巧 Nominal Typing名义类型详解
2022/09/23 Javascript