当前位置:  编程技术>php

php实现分页工具类分享

    来源: 互联网  发布时间:2014-08-26

    本文导语:  代码: 代码如下:    /**    * 把中间的看成一个可以滑动的固定长度的尺子    *    * 把$this->_totalShowPages 当成一个可以滑动的固定长度尺子,    * 然后$this->_totalPages就是一个给定长度的木块,尺子在这个    * 木块上滑...

代码:

代码如下:

    /**
    * 把中间的看成一个可以滑动的固定长度的尺子
    *
    * 把$this->_totalShowPages 当成一个可以滑动的固定长度尺子,
    * 然后$this->_totalPages就是一个给定长度的木块,尺子在这个
    * 木块上滑动。情况两种:
    * 1. 尺子长度大于木块长度,那么就直接输出所有的页码;
    * 2. 尺子长度小于木块长度,那么就只用找到输出这个尺子长度页
    * 数的起始点——$start, $end;
    * @Access protected
    * @Return void
    * @Exception none
    */
    protected function _getShowPageNumber()
    {
    $pageHtml = '';
    //找到$start点
    if($this->_curPage - 2 > 1) {
    $start = $this->_curPage - 2;
    } else {
    $start = 1;
    }
    //找到$end 点
    $end = $start + $this->_totalShowPages;
    if($end >= $this->_totalPages) {
    $end = $this->_totalPages;
    $start = $end - $this->_totalShowPages; //保证页面显示的长度为$this->_totalShowPages
    }
    if($start != 1) {
    $pageHtml .= $this->_getPageHtml(1);
    $preMore = $this->_curPage - $this->_totalShowPages;
    if($preMore < 1) {
    $preMore = 1;
    }
    $pageHtml .= $this->_getMorePageHtml($preMore);
    }
    for($page = $start; $page < $end; $page ++) {
    $pageHtml .= $this->_getPageHtml($page);
    }
    if($end != $this->_totalPages) {
    $pageHtml .= $this->_getMorePageHtml($end);
    }
    $pageHtml .= $this->_getNormalPageHtml($this->_totalPages);

    return $pageHtml;
    }
 

第一种老想法的代码实现:

代码如下:

    /**
    * 一步步的来
    *
    * @desc
    *
    * @Access protected
    * @Return void
    * @Exception none
    */
    protected function _getShowPageNumberTwo()
    {
    if($this->_curPage < $this->_totalShowPages) {
    for($page = 1; $page < $this->_totalShowPages; $page ++) {
    $pageHtml .= $this->_getPageHtml($page);
    }
    $pageHtml .= $this->_getMorePageHtml($this->_totalShowPages);
    $pageHtml .= $this->_getNormalPageHtml($this->_totalPages);
    } else {
    $pageHtml .= $this->_getNormalPageHtml(1);
    if($this->_curPage == $this->_totalShowPages) {
    $pageHtml .= $this->_getMorePageHtml(1);
    } else {
    $pageHtml .= $this->_getMorePageHtml($this->_curPage - $this->_totalShowPages);
    }
    if($this->_curPage + $this->_totalShowPages >= $this->_totalPages) {
    for($page = $this->_totalPages - $this->_totalShowPages; $page < = $this->_totalPages; $page ++) {
    $pageHtml .= $this->_getPageHtml($page);
    }
    } else {
    $start = $this->_curPage - 2;
    $end = $this->_curPage + $this->_totalShowPages - 2;
    for($page = $start; $page < $end; $page ++) {
    $pageHtml .= $this->_getPageHtml($page);
    }
    $pageHtml .= $this->_getMorePageHtml($this->_curPage + $this->_totalShowPages - 2);
    $pageHtml .= $this->_getNormalPageHtml($this->_totalPages);
    }
    }

    return $pageHtml;
    }
   

    
 
 

您可能感兴趣的文章:

  • php实现socket实现客户端和服务端数据通信源代码
  • PHP实现的AMQP php-amqplib
  • PHP实现Unicode和Utf-8互相转换
  • php解压文件代码实现php在线解压
  • php通过pack和unpack函数实现对二进制数据封装及解析
  • php通过数组实现多条件查询实现方法(字符串分割)
  • php微博短网址算法 php生成短网址的实现代码
  • php过滤html中网站链接 php实现域名白名单功能
  • php实现文件强制下载代码
  • PHP快速排序小例子 php快速排序实现方法
  • php 九九乘法口诀表实现代码
  • PHP实现获取图片颜色值的方法
  • php 通配符实现方法
  • php实现的九九乘法口诀表简洁版
  • PHP扩展实现的框架 ZoeeyPHP
  • PHP 语言实现 HippyVM
  • php实现斐波那契数列的简单写法
  • 如何实现类似PHP.PB等语言中eval的函数功能?
  • PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
  • apache配置php实现单一入口方法
  • 如何用php实现IP访问限制
  • PHP调试工具 PHP debug tools
  • PHP 调试工具 PHP Debug Bar
  • php漏洞挖掘工具 PHP Vulnerability Hunter
  • PHP的SOAP工具包 PHP Soap
  • PHP源文件加密工具 PHP Screw
  • PHP 调试工具 PHP_Dyn
  • PHP调试工具 TestPHP
  • PHP到.NET的转换工具 Jadu
  • PHP表单构建工具 FormBuilder
  • PHP 代码加密工具 HCache
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • php循环创建目录示例分享(php创建多级目录)
  • php利用腾讯ip分享计划获取地理位置示例分享
  • PHP异步执行技巧分享
  • 测试php连接mysql是否成功的代码分享
  • php类声明和php类使用方法示例分享
  • php中$美元符号与Zen Coding冲突问题解决方法分享
  • php获取字段名示例分享
  • PHP生成自定义长度随机字符串的函数分享
  • php获取bing每日壁纸示例分享
  • PHP延迟静态绑定示例分享
  • PHP zip扩展Linux下安装过程分享
  • php使用qr生成二维码的示例分享
  • 一个PHP二维数组排序的函数分享
  • php实例分享之html转为rtf格式
  • php实现水仙花数代码分享
  • php腾讯ip分享计划获取IP地理位置
  • php实现水仙花数示例分享
  • php删除数组元素示例分享
  • php析构函数用法分享
  • php共享内存段示例分享
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • IIS7配置PHP图解(IIS7+PHP_5.2.17/PHP_5.3.5)
  • PHP 5.4.19 和 PHP 5.5.3 发布及下载地址
  • php输入流php://input使用示例(php发送图片流到服务器)
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • PHP转换器 HipHop for PHP
  • PHP去除html标签,php标记及css样式代码参考
  • PHP 框架 Pop php
  • PHP 'ext/soap/php_xml.c'不完整修复存在多个任意文件泄露漏洞
  • HTML教程 iis7站长之家
  • php通过socket_bind()设置IP地址代码示例


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3