当前位置:首页 > 技术文档 > 正文内容

php简单分页类

admin11年前 (2015-05-18)技术文档1645
<?php
class page{
      
    public $page; //当前页
    public $pagenum;  // 页数
    public $pagesize;  // 每页显示条数
    public function __construct($count, $pagesize){
        $this->pagenum = ceil($count/$pagesize);
        $this->pagesize = $pagesize;
        $this->page =(isset($_GET['p'])&&$_GET['p']>0) ? intval($_GET['p']) : 1;
    }
    /**
     * 获得 url 后面GET传递的参数
     */
    public function getUrl(){   
        $url = 'index.php?'.http_build_query($_GET);
        $url = preg_replace('/[?,&]p=(\w)+/','',$url);
        $url .= (strpos($url,"?") === false) ? '?' : '&';
        return $url;
    }
    /**
     * 获得分页HTML
     */
    public function getPage(){
        $url = $this->getUrl();
        $start = $this->page-5;
        $start=$start>0 ? $start : 1; 
        $end   = $start+9;
        $end = $end<$this->pagenum ? $end : $this->pagenum;
        $pagestr = '';
        if($this->page>5){
            $pagestr = "<a href=".$url."p=1".">首页</a> ";
        }
        if($this->page!=1){
            $pagestr.= "<a href=".$url."p=".($this->page-1).">上一页</a>";
        }
          
        for($i=$start;$i<=$end;$i++){
            $pagestr.= "<a href=".$url."p=".$i.">".$i."</a>  ";                     
        }
        if($this->page!=$this->pagenum){
            $pagestr.="<a href=".$url."p=".($this->page+1).">下一页</a>";
              
        }
        if($this->page+5<$this->pagenum){
            $pagestr.="<a href=".$url."p=".$this->pagenum.">尾页</a> ";
        }
        return $pagestr;    
    }
      
}
// 测试代码
$page = new page(100,10);
$str=$page->getPage();
echo $str;
  
  
?>


分享到:

扫描二维码推送至手机访问。

版权声明:本文由云河空间发布,如需转载请注明出处。

本文链接:https://yuyunhe.cn/index.php/post/42.html

分享给朋友:

“php简单分页类” 的相关文章

php 判断手机访问

//手机来访 function is_mobile() {     $user_agent = $_SERVER['HTTP_USER_AGENT'];    &n...

php 获取当前网址

function get_url() {     $sys_protocal = isset($_SERVER['SERVER_PORT']) && $_SERVER...

抓取最近八天天气(非利用接口,直接从网站提取)

<?php    /*     *特别注意,第一天没有最高气温数据,第八天没有最低气温数据     *注意对数字进行过滤时不要忘记对负号进行判断   &nb...

dz中“QQ互联”出现Discuz! Database Error解决办法

dz中“QQ互联”出现Discuz! Database Error解决办法

dz中QQ登陆出现Discuz! Database Error解决办法dz站长朋友相信肯定有人遇到做的QQ互联登录,根本没法用,这让网站的社交登录性能大打折扣,这么解决?下面就看大神的神操作!...

dz第三方模块添加方法

dz第三方模块添加方法

使用dz做网站的朋友有时候会用到第三方模块专题,这就会遇到一个模块通信的问题,可是弄了半天就是“数据无法识别,请返回”, 也够雷人的,ok,这你就给大家分享下本人的一点经验,以供大家参考!dz第三方模块添加方法...

图文解说Navicat使用ssh方式连接远程MySql服务器

图文解说Navicat使用ssh方式连接远程MySql服务器

如何使用Navicat 8.0 for MySQL连接公司服务器的数据库,但我也是第一次接触这个软件,搞了半天也没连上,在网上找了很多解决的办法,其中就有使用ssh方式连接的,但写的不够详细,因此还是费了一番功夫,自己搞定的,不敢独享,特记录下来 与大家分享。首先,在Navicat的连接设置里选择S...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。