怎么实现thinkphp框架page类与bootstrap分页
创始人
2024-12-08 14:21:06
0次

bootstrap分样式使用方法这里写链接内容


 
  
  •         «       
  •   
  • 1
  •   
  • 2
  •   
  • 3
  •   
  • 4
  •   
  • 5
  •   
  •         »       
  •   1.找到Thinkphp中的Page.class.php,然后使用下面的文件内容完全替换  '
  • 共 %TOTAL_ROW% 条记录
  • ',     'prev'  => '<<',     'next'  => '>>',     'first' => '1...',     'last'  => '...%TOTAL_PAGE%',     'theme' => '%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%',   );   /**    * 架构函数    * @param array $totalRows 总的记录数    * @param array $listRows 每页显示记录数    * @param array $parameter 分页跳转的参数    */   public function __construct($totalRows, $listRows=20, $parameter = array()) {     C('VAR_PAGE') && $this->p = C('VAR_PAGE'); //设置分页参数名称     /* 基础设置 */     $this->totalRows = $totalRows; //设置总记录数     $this->listRows  = $listRows; //设置每页显示行数     $this->parameter = empty($parameter) ? $_GET : $parameter;     $this->nowPage  = empty($_GET[$this->p]) ? 1 : intval($_GET[$this->p]);     $this->nowPage  = $this->nowPage>0 ? $this->nowPage : 1;     $this->firstRow  = $this->listRows * ($this->nowPage - 1);   }   /**    * 定制分页链接设置    * @param string $name 设置名称    * @param string $value 设置值    */   public function setConfig($name,$value) {     if(isset($this->config[$name])) {       $this->config[$name] = $value;     }   }   /**    * 生成链接URL    * @param integer $page 页码    * @return string    */   private function url($page){     return str_replace(urlencode('[PAGE]'), $page, $this->url);   }   /**    * 组装分页链接    * @return string    */   public function show() {     if(0 == $this->totalRows) return '';     /* 生成URL */     $this->parameter[$this->p] = '[PAGE]';     $this->url = U(ACTION_NAME, $this->parameter);     /* 计算分页信息 */     $this->totalPages = ceil($this->totalRows / $this->listRows); //总页数     if(!empty($this->totalPages) && $this->nowPage > $this->totalPages) {       $this->nowPage = $this->totalPages;     }     /* 计算分页零时变量 */     $now_cool_page   = $this->rollPage/2;     $now_cool_page_ceil = ceil($now_cool_page);     $this->lastSuffix && $this->config['last'] = $this->totalPages;     //上一页     $up_row = $this->nowPage - 1;     $up_page = $up_row > 0 ? '
  • url($up_row) . '" rel="external nofollow" >' . $this->config['prev'] . '
  • ' : '';     //下一页     $down_row = $this->nowPage + 1;     $down_page = ($down_row <= $this->totalPages) ? '
  • url($down_row) . '" rel="external nofollow" >' . $this->config['next'] . '
  • ' : '';     //第一页     $the_first = '';     if($this->totalPages > $this->rollPage && ($this->nowPage - $now_cool_page) >= 1){       $the_first = '
  • url(1) . '" rel="external nofollow" >' . $this->config['first'] . '
  • ';     }     //最后一页     $the_end = '';     if($this->totalPages > $this->rollPage && ($this->nowPage + $now_cool_page) < $this->totalPages){       $the_end = '
  • url($this->totalPages) . '" rel="external nofollow" >' . $this->config['last'] . '
  • ';     }     //数字连接     $link_page = "";     for($i = 1; $i <= $this->rollPage; $i++){       if(($this->nowPage - $now_cool_page) <= 0 ){         $page = $i;       }elseif(($this->nowPage + $now_cool_page - 1) >= $this->totalPages){         $page = $this->totalPages - $this->rollPage + $i;       }else{         $page = $this->nowPage - $now_cool_page_ceil + $i;       }       if($page > 0 && $page != $this->nowPage){         if($page <= $this->totalPages){           $link_page .= '
  • url($page) . '" rel="external nofollow" >' . $page . '
  • ';         }else{           break;         }       }else{         if($page > 0 && $this->totalPages != 1){           $link_page .= ''.$page.'';         }       }     }     //替换分页内容     $page_str = str_replace(       array('%HEADER%', '%NOW_PAGE%', '%UP_PAGE%', '%DOWN_PAGE%', '%FIRST%', '%LINK_PAGE%', '%END%', '%TOTAL_ROW%', '%TOTAL_PAGE%'),       array($this->config['header'], $this->nowPage, $up_page, $down_page, $the_first, $link_page, $the_end, $this->totalRows, $this->totalPages),       $this->config['theme']);     return "{$page_str}";   } }

    2.相关控制器代码

      //所有新闻
      public function all_news(){
        $Article=M("Article");
        $where['article_type']=1;
        //查询满足要求的总的记录数
        $count=$Article->where($where)->count();
        //实例化分页类传入总记录数和煤业显示的记录数
        $Page=new \Think\Page($count,1);
        //分页显示输出
        $show=$Page->show();
        // 进行分页数据查询 注意limit方法的参数要使用Page类的属性
        $news=$Article->where($where)->order('pub_time')->field('id,title,institution_type,author_name,pub_time')->limit($Page->firstRow.','.$Page->listRows)->select();
        //赋值数据集
        $this->assign('news',$news);
        //赋值分页输出
        $this->assign('page',$show);
        $this->display();
      }

    3.html中只需要

      
               {$page}

    以上是“怎么实现thinkphp框架page类与bootstrap分页”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

    相关内容

    热门资讯

    空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
    空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
    格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
    空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
    格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
    品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
    空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
    空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
    中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
    中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...