首頁  >  文章  >  後端開發  >  ThinkPhp3.2中寫分頁的範例程式碼分享

ThinkPhp3.2中寫分頁的範例程式碼分享

黄舟
黄舟原創
2017-07-27 15:06:431249瀏覽

用TP3.2寫分頁手冊上說的好難懂,我自己去網上找資料,現在整理一下,以後可能會用;

在Think下面有Page.class.php類別;

我在這個下面放了一個function.php的(算是類別吧又不是..)檔案;

目的:方便其他地方呼叫;

看原始碼:這是function.php裡的程式碼:

<?php
/**
 * TODO 基础分页的相同代码封装,使前台的代码更少
 * @param $count 要分页的总记录数
 * @param int $pagesize 每页查询条数
 * @return \Think\Page
 */
function getpage($count, $pagesize = 10) {
    $p = new Think\Page($count, $pagesize);
    $p->setConfig(&#39;header&#39;, &#39;<li class="rows">共<b>%TOTAL_ROW%</b>条记录 第<b>%NOW_PAGE%</b>页/共<b>%TOTAL_PAGE%</b>页</li>&#39;);
    $p->setConfig(&#39;prev&#39;, &#39;上一页&#39;);
    $p->setConfig(&#39;next&#39;, &#39;下一页&#39;);
    $p->setConfig(&#39;last&#39;, &#39;末页&#39;);
    $p->setConfig(&#39;first&#39;, &#39;首页&#39;);
    $p->setConfig(&#39;theme&#39;, &#39;%FIRST%%UP_PAGE%%LINK_PAGE%%DOWN_PAGE%%END%%HEADER%&#39;);
    $p->lastSuffix = false;//最后一页不显示为总页数
    return $p;
}
?>

在控制其中怎麼用呢? :

public function fy() {
        $m = M(&#39;article&#39;);
        $where = "a_id>10";
        $count = $m->where($where)->count();
        $p = getpage($count,10);//每页显示几条
        $list = $m->field(true)->where($where)->order(&#39;a_id&#39;)->limit($p->firstRow, $p->listRows)->select();
        $this->assign(&#39;select&#39;, $list); // 赋值数据集
        $this->assign(&#39;page&#39;, $p->show()); // 赋值分页输出
        $this->display(&#39;Ws:public/fy&#39;);
    }

再來看前端頁面:

 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>信息输出</title>

    </head><style>
    .pages a,.pages span {
    display:inline-block;
    padding:2px 5px;
    margin:0 1px;
    border:1px solid #f0f0f0;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius:3px;}.pages a,.pages li {
    display:inline-block;
    list-style: none;
    text-decoration:none; color: black;}.pages a.first,.pages a.prev,.pages a.next,.pages a.end{
    margin:0;}.pages a:hover{
    border-color:crimson;}.pages span.current{
    background:#50A8E6;
   color: black;
    font-weight:700;
    border-color:#50A8E6;}
    </style>
    <body>
        <table width="405" border="1" cellpadding="1" cellspacing="1" bgcolor="#99CC33" bordercolor="#FFFFFF">
           
          
            <tr class="title">
                <td bgcolor="#FFFFFF" width="44">编号</td>
                <td bgcolor="#FFFFFF" width="120">标题</td>
                <td bgcolor="#FFFFFF" width="223">描述</td>
            </tr>
            <foreach name=&#39;select&#39; item=&#39;user&#39; >
                <tr class="content">
                    <td bgcolor="#FFFFFF"> {$user.a_id}</td>
                    <td bgcolor="#FFFFFF"> {$user.a_title}</td>
                    <td bgcolor="#FFFFFF"> {$user.a_remark}</td>
                </tr>
            </foreach>
            <tr class="content">
                <!--<td colspan="3" bgcolor="#FFFFFF"> {$page}</td>-->
                <td colspan="3" bgcolor="#FFFFFF"><p class="pages">
                        {$page}                </p></td>  
            </tr>
        </table>
    </body>

 

#

以上是ThinkPhp3.2中寫分頁的範例程式碼分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn