• 数组分页函数


       /**
         +----------------------------------------------------------
         * 数组分页函数 核心函数 array_slice
         +----------------------------------------------------------
         * 用此函数之前要先将数据库里面的所有数据按一定的顺序查询出来存入数组中
         +---------------------------------------------------------- 
         * @access public
         +----------------------------------------------------------
         * @param  int  $count  每页多少条数据
         * @param  int   $page  当前第几页
         * @param  array  $array  查询出来的所有数组
         * @param  int  order 0 - 不变   1- 反序
         +---------------------------------------------------------- 
         * @return  array 返回信息
         +----------------------------------------------------------
         */
        public function page_array($count,$page,$array,$order){
            $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);
            $data['data'] = $pagedata;
            $data['countpage'] = $countpage;
            return $data; // 返回查询数据
        }
        
        /**
         +----------------------------------------------------------
         * 分页及显示函数
         +----------------------------------------------------------
         * @access public
         +----------------------------------------------------------
         * @param  int  $countpage  总页数
         * @param  string   $url 当前url
        +---------------------------------------------------------- 
         * @return  srting 分页字符串
         +----------------------------------------------------------
         */
        public 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="text-align:right;">';
            $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;
        }
  • 相关阅读:
    docker: 定时检查docker container的运行状态并发邮件报警
    docker: 解决centos7下cgroup.procs: no such device的错误
    Redis: 改变HomeBrew安装的数据库文件目录
    MySQL: 改变Homebrew安装MySQL/MariaDB的数据库文件目录
    Node: 在Mac中离线安装Sqlite3
    通过DaoCloud发布Ghost
    Node: Updating npm's bundled node gyp
    Android Broadcast管理
    Android PackageManager packages.xml文件格式
    Android PackageManager概览
  • 原文地址:https://www.cnblogs.com/lizhenli/p/5368642.html
Copyright © 2020-2023  润新知