欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

ThinkPhp3.2中写分页的示例代码分享

程序员文章站 2022-05-21 22:22:33
...
用TP3.2写分页 手册上说的好难懂,我自己去网上找资料 ,现在整理一下,以后可能会用;

在Think下面有Page.class.php类;

我在ThinkPhp3.2中写分页的示例代码分享这个下面放了一个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('header', '<li class="rows">共<b>%TOTAL_ROW%</b>条记录&nbsp;第<b>%NOW_PAGE%</b>页/共<b>%TOTAL_PAGE%</b>页</li>');
    $p->setConfig('prev', '上一页');
    $p->setConfig('next', '下一页');
    $p->setConfig('last', '末页');
    $p->setConfig('first', '首页');
    $p->setConfig('theme', '%FIRST%%UP_PAGE%%LINK_PAGE%%DOWN_PAGE%%END%%HEADER%');
    $p->lastSuffix = false;//最后一页不显示为总页数
    return $p;
}
?>

在控制其中怎么用呢?:

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

再来看前端页面:

 <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='select' item='user' >
                <tr class="content">
                    <td bgcolor="#FFFFFF">&nbsp;{$user.a_id}</td>
                    <td bgcolor="#FFFFFF">&nbsp;{$user.a_title}</td>
                    <td bgcolor="#FFFFFF">&nbsp;{$user.a_remark}</td>
                </tr>
            </foreach>
            <tr class="content">
                <!--<td colspan="3" bgcolor="#FFFFFF">&nbsp;{$page}</td>-->
                <td colspan="3" bgcolor="#FFFFFF"><p class="pages">
                        {$page}                </p></td>  
            </tr>
        </table>
    </body>

以上就是ThinkPhp3.2中写分页的示例代码分享的详细内容,更多请关注其它相关文章!