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

2015-01-24信息快讯网

这篇文章主要介绍了PHP基于数组实现的分页函数实例,是非常实用的一个技巧,需要的朋友可以参考下

分页功能是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跨平台获取服务器IP地址自定义函数分享
php中mail函数发送邮件失败的解决方法
php用户注册时常用的检验函数实例总结
PHP获取当前完整URL地址的函数
php数组添加元素方法小结
php获取数组元素中头一个数组元素值的实现方法
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
PHP使用array_multisort对多个数组或多维数组进行排序
php中Array2xml类实现数组转化成XML实例
Codeigniter框架实现获取分页数据和总条数的方法
Thinkphp搜索时首页分页和搜索页保持条件分页的方法
Yii分页用法实例详解
thinkphp数据查询和遍历数组实例
PHP分页类集锦
php+ajax实现无刷新分页的方法
Codeigniter(CI)框架分页函数及相关知识
PHP封装分页函数实现文本分页和数字分页
php分页函数完整实例代码
PHP编译安装中遇到的两个错误和解决方法
PHP中读取照片exif信息的方法
PHP函数eval()介绍和使用示例
PHP函数http_build_query使用详解
PHP函数in_array()使用详解
PHP采用自定义函数实现遍历目录下所有文件的方法
浅谈php函数serialize()与unserialize()的使用方法
PHP将回调函数作用到给定数组单元的方法
php中使用array_filter()函数过滤空数组的实现代码
php中多维数组按指定value排序的实现代码
php数组索引的Key加引号和不加引号的区别
PHP生成数组再传给js的方法
php中单个数据库字段多列显示(单字段分页、横向输出)
Yii使用CLinkPager分页实例详解
YII实现分页的方法
ThinkPHP让分页保持搜索状态的方法
改写ThinkPHP的U方法使其路由下分页正常
php页码形式分页函数支持静态化地址及ajax分页
©2014-2024 dbsqp.com