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

  1. <?php
  2. /**
  3. * 数组分页函数  核心函数  array_slice
  4. * 用此函数之前要先将数据库里面的所有数据按一定的顺序查询出来存入数组中
  5. * $count   每页多少条数据
  6. * $page   当前第几页
  7. * $array   查询出来的所有数组
  8. * order 0 - 不变     1- 反序
  9. */
  10. function page_array($count,$page,$array,$order){
  11. global $countpage; #定全局变量
  12. $page=(empty($page))?'1':$page; #判断当前页面是否为空 如果为空就表示为第一页面
  13. $start=($page-1)*$count; #计算每次分页的开始位置
  14. if($order==1){
  15. $array=array_reverse($array);
  16. }
  17. $totals=count($array);
  18. $countpage=ceil($totals/$count); #计算总页面数
  19. $pagedata=array();
  20. $pagedata=array_slice($array,$start,$count);
  21. return $pagedata;  #返回查询数据
  22. }
  23. /**
  24. * 分页及显示函数
  25. * $countpage 全局变量,照写
  26. * $url 当前url
  27. */
  28. function show_array($countpage,$url){
  29. $page=empty($_GET['page'])?1:$_GET['page'];
  30. if($page > 1){
  31. $uppage=$page-1;
  32. }else{
  33. $uppage=1;
  34. }
  35. if($page < $countpage){
  36. $nextpage=$page+1;
  37. }else{
  38. $nextpage=$countpage;
  39. }
  40. $str='<div style="border:1px; width:300px; height:30px; color:#9999CC">';
  41. $str.="<span>共  {$countpage}  页 / 第 {$page} 页</span>";
  42. $str.="<span><a href='$url?page=1'>   首页  </a></span>";
  43. $str.="<span><a href='$url?page={$uppage}'> 上一页  </a></span>";
  44. $str.="<span><a href='$url?page={$nextpage}'>下一页  </a></span>";
  45. $str.="<span><a href='$url?page={$countpage}'>尾页  </a></span>";
  46. $str.='</div>';
  47. return $str;
  48. }
  49. ?>

PHP基于数组的分页函数(核心函数array_slice())的更多相关文章

  1. php基于数组的分页实现

    关于数组的分页函数,用数组进行分页的好处是可以方便的进行联合多表查询,只需要将查询的结果放在数组中就可以了以下是数组分页的函数,函数page_array用于数组的分页,函数show_array用于分页 ...

  2. 并发服务器--02(基于I/O复用——运用Select函数)

    I/O模型 Unix/Linux下有5中可用的I/O模型: 阻塞式I/O 非阻塞式I/O I/O复用(select.poll.epoll和pselect) 信号驱动式I/O(SIGIO) 异步I/O( ...

  3. 解密jQuery内核 DOM操作的核心函数domManip

    domManip是什么 dom即Dom元素,Manip是Manipulate的缩写,连在一起就是Dom操作的意思. .domManip()是jQuery DOM操作的核心函数 对封装的节点操作做了参数 ...

  4. 【OpenGL游戏开发之三】OpenGl核心函数库汇总

    OpenGl核心函数库 glAccum 操作累加缓冲区 glAddSwapHintRectWIN 定义一组被SwapBuffers拷贝的三角形 glAlphaFunc允许设置alpha检测功能 glA ...

  5. PHP自练项目之数字与文字的分页效果在函数中实现

    /** * * @param $_sql * @param $_size */ function _page($_sql,$_size) { //将里面的所有变量取出来,外部可以访问 global $ ...

  6. Jquery()核心函数的7个重载方法

    (1) jquery() 该函数返回一个空的jQuery对象.在jQuery1.4以后的版本中,改函数返回一个空的jQuery对象.在之后的版本中,该函数会返回一个包含document节点的对象. ( ...

  7. zepto学习之路--核心函数$()的实现

    $()可以说是jquery的精华了,为dom操作带来了极大的灵活和方便.zepto号称“移动版的jquery”,那么它是怎么来实现这个核心函数呢?我们来详细探讨下. 1.首先,我们看下zepto中它是 ...

  8. FCL源码中数组类型的学习及排序函数Sort函数的分析

    Array 是所有数组的基类ArrayList 解决了所有Array 类的缺点    能动态扩容, 但是类型不安全的,而是会有装箱与拆箱的性能开销List<T> 则是解决了ArrayLis ...

  9. JQuery --- 第一期 (初识jQuery, JQuery核心函数和工具方法)

    个人学习笔记  初识jQuery 1.我的第一个JQuery <!DOCTYPE html> <html lang="en"> <head> & ...

随机推荐

  1. UVa 1626 Brackets sequence (动态规划)

    题意:用最少的括号将给定的字符串匹配,输出最优解.可能有空行. 思路:dp. dp[i][j]表示将区间i,j之间的字符串匹配需要的最少括号数,那么 如果区间左边是(或[,表示可以和右边的字符串匹配, ...

  2. zookeeper初识之原理

    ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等. Zookeeper是hadoop的一个子项目 ...

  3. 北大poj-1062

    昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 43523   Accepted: 12760 Descripti ...

  4. HTMl5-canvas 入门级复习

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. Android 优化List图片显示

    通常在界面中涉及到大量图片加载的时候都会产生卡顿,因此需要优化 其核心思想就是减少在getView()中的代码量和操作,让其尽可能的轻量化.众多方法最根本的目的是 将一切耗时的操作从getView中抽 ...

  6. HDU 1508 DP

    题意:规定一个数列 = {这个数的质因子只能包括2,3,5,7},求第n个数字是多少: 思路:暴力打表,然后只粘数据,虽然过了,但是正解其实是DP,每一个数字都是由某一个该数列里的某一个数字乘以2,3 ...

  7. React Native中的网络请求fetch和简单封装

    React Native中的网络请求fetch使用方法最为简单,但却可以实现大多数的网络请求,需要了解更多的可以访问: https://segmentfault.com/a/1190000003810 ...

  8. 史上最全的html标签属性用法对照表

    html标签特效代码语法使用对照说明 <!> 跑马灯 <marquee>...</marquee>普通卷动 <marquee behavior=slide&g ...

  9. MATLAB与C/C++混合编程的一些总结

    [转载请注明出处]http://www.cnblogs.com/mashiqi 先上总结: 由于C/C++语言的函数输入输出参数的特点,可以将多个参数方便地传入一个函数中,但却不能方便地返回多个参数. ...

  10. Java笔记2-数据类型,变量,Java运算符

    我们编写软件,目的是为了高效的操作(增,删,改,查)数据. 数据类型 1.基本类型(8种)byte 字节型 -128~127short 短整型 -32768~32767int 整型 -21474836 ...