ThinkPHP 整合bootstrap分页

ThinkPHP框架自带的分页样式是:

 
  


而bootstrap的分页样式是:

<div class="modal-footer no-margin-top">
    <ul class="pagination pull-right no-margin">
        <li class="prev disabled">
            <a href="#">
                <i class="icon-double-angle-left">i>
            a>
        li>

        <li class="active">
            <a href="#">1a>
        li>

        <li>
            <a href="#">2a>
        li>

        <li>
            <a href="#">3a>
        li>

        <li class="next">
            <a href="#">
                <i class="icon-double-angle-right">i>
            a>
        li>
    ul>
div>
修改/ThinkPHP/Library/Think/Page.class.php文件中的分页样式:


//上一页
$up_row  = $this->nowPage - 1;
$up_page = $up_row > 0 ? '' : '';

//下一页
$down_row  = $this->nowPage + 1;
$down_page = ($down_row <= $this->totalPages) ? '' : '';

//第一页
$the_first = '';
if($this->totalPages > $this->rollPage && ($this->nowPage - $now_cool_page) >= 1){
    $the_first = '
  • 1) . '">' . $this->config['first'] . '
  • '
    ; } //最后一页 $the_end = ''; if($this->totalPages > $this->rollPage && ($this->nowPage + $now_cool_page) < $this->totalPages){ $the_end = '
  • totalPages) . '">' . $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 .= '
  • '">' . $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}
    "
    ;


    控制器代码:

    /*计算总页数*/
    $pagesize = 3;	// 每页记录数
    $count = $user->where('tag=0 AND status=0')->count();
    $Page = new \Think\Page($count, $pagesize);     // 实例化分页类
    $show = $Page->show();      // 分页显示输出
    $this->assign('page',$show);    // 赋值分页输出
    
    /*进行分页数据查询*/
    $data = $user->where('tag=0 AND status=0')->limit($Page->firstRow.','.$Page->listRows)->select();
    $this->data = $data;

    视图代码:

    <div class="modal-footer no-margin-top">{$page}div>

    显示效果如下图:


    带参数分页:$page->parameter表示分页跳转时的参数

    另外,此时的关键字需通过get方法获取,post方法时,分页跳转不能保存参数。

    ThinkPHP 整合bootstrap分页_第1张图片

    你可能感兴趣的:(ThinkPHP框架)