zoukankan      html  css  js  c++  java
  • 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; 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;  
    }  
    ?>  
  • 相关阅读:
    在虚拟机安装Oracle EF步骤
    ORACLE数据库入门级及操作杂记
    软技能-代码之外的生存指南读后感
    RabbitMQ 使用demo
    RabbitMQ 应用学习随笔
    mysql 发生死锁时,解决方法
    GBase存过--工作实战
    Oracle存储过程--工作实战
    浅谈Oracle、MySQL和Gbase的使用体验(一)
    seajs学习笔记
  • 原文地址:https://www.cnblogs.com/jiechn/p/4402074.html
Copyright © 2011-2022 走看看