PHP基于数组的分页函数(核心函数array_slice())
关于数组的分页函数,用数组进行分页的好处是可以方便的进行联合多表查询,只需要将查询的结果放在数组中就可以了以下是数组分页的函数,函数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基于数组的分页函数(核心函数array_slice())的更多相关文章
- php基于数组的分页实现
关于数组的分页函数,用数组进行分页的好处是可以方便的进行联合多表查询,只需要将查询的结果放在数组中就可以了以下是数组分页的函数,函数page_array用于数组的分页,函数show_array用于分页 ...
- 并发服务器--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( ...
- 解密jQuery内核 DOM操作的核心函数domManip
domManip是什么 dom即Dom元素,Manip是Manipulate的缩写,连在一起就是Dom操作的意思. .domManip()是jQuery DOM操作的核心函数 对封装的节点操作做了参数 ...
- 【OpenGL游戏开发之三】OpenGl核心函数库汇总
OpenGl核心函数库 glAccum 操作累加缓冲区 glAddSwapHintRectWIN 定义一组被SwapBuffers拷贝的三角形 glAlphaFunc允许设置alpha检测功能 glA ...
- PHP自练项目之数字与文字的分页效果在函数中实现
/** * * @param $_sql * @param $_size */ function _page($_sql,$_size) { //将里面的所有变量取出来,外部可以访问 global $ ...
- Jquery()核心函数的7个重载方法
(1) jquery() 该函数返回一个空的jQuery对象.在jQuery1.4以后的版本中,改函数返回一个空的jQuery对象.在之后的版本中,该函数会返回一个包含document节点的对象. ( ...
- zepto学习之路--核心函数$()的实现
$()可以说是jquery的精华了,为dom操作带来了极大的灵活和方便.zepto号称“移动版的jquery”,那么它是怎么来实现这个核心函数呢?我们来详细探讨下. 1.首先,我们看下zepto中它是 ...
- FCL源码中数组类型的学习及排序函数Sort函数的分析
Array 是所有数组的基类ArrayList 解决了所有Array 类的缺点 能动态扩容, 但是类型不安全的,而是会有装箱与拆箱的性能开销List<T> 则是解决了ArrayLis ...
- JQuery --- 第一期 (初识jQuery, JQuery核心函数和工具方法)
个人学习笔记 初识jQuery 1.我的第一个JQuery <!DOCTYPE html> <html lang="en"> <head> & ...
随机推荐
- CSS行内元素和块级元素的居中
一.水平居中 行内元素和块级元素不同,对于行内元素,只需在父元素中设置text-align=center即可; 对于块级元素有以下几种居中方式: 1.将元素放置在table中,再将table的marg ...
- 数组第K小数问题 及其对于 快排和堆排 的相关优化比较
题目描述 给定一个整数数组a[0,...,n-1],求数组中第k小数 输入描述 首先输入数组长度n和k,其中1<=n<=5000, 1<=k<=n 然后输出n个整形元素,每个数 ...
- C/C++ 网络库介绍
C/C++ 网络库介绍 Aggregated List of Libraries(Source Link) Boost.Asio is really good. Asio is also availa ...
- cocos2d 中显示系统时间
用到的两个方法先贴上 这个是时间回调 每分钟回去调用一次时间设置方法 //定时更新状态栏上的时间 void MGameScene::update(float dt) { ; fpassedTime + ...
- C# 导出到Excel
一个DataGrid里有两张表的数据,导出成一张表 protected void btnExcel_Click(object sender, EventArgs e) { InfoExport(); ...
- StatisticalOutlierRemoval源码
源代码 * * Software License Agreement (BSD License) * * Point Cloud Library (PCL) - www.pointclouds.org ...
- pcl点云文件格式
PCD版本 在点云库(PCL)1.0版本发布之前,PCD文件格式有不同的修订号.这些修订号用PCD_Vx来编号(例如,PCD_V5.PCD_V6.PCD_V7等等),代表PCD文件的0.x版本号.然而 ...
- Date get period
/** * get period for last year * @param time * @return */ public static DatePeriodDTO getLastYear(lo ...
- Mysql分区简述
1. 数据量大的时候 mysql分表非常常用,但是mysql还可以分区. 2. 分区就是把同一张表放在不同的磁盘文件上, 当查询的时候首先定位是哪个分区(查询的时候一定要用到分区的key) 3. 分区 ...
- 利用freemarker 静态化网页
1.介绍-FreeMarker是什么 模板引擎:一种基于模板的.用来生成输出文本的通用工具 基于Java的开发包和类库 2.介绍-FreeMarker能做什么 MVC框架中的View层组件 Html页 ...