数据分页是web开发中一个常用的功能,thinkphp内置了分页类(ThinkPHP系统目录下Lib/ORG/Util/Page.class.php),可以直接使用。
分页类语法:
Page(totalRows,listRows,parameter)
参数说明:
totalRows 必选,总的记录数
listRows 可选,每页显示记录数。默认是20
parameter 可选,分页跳转的参数
分页操作
在查询操作中,使用import指令导入 分页类
public function select(){
$Dao = M("User");
//计算总数
$count = $Dao->count();
//导入分页类
import("ORG.Util.Page");
//实例化分页类
$p = new Page($count,10);
//分页显示输出
$page = $p->show();
//当前页数数据查询
$list =$Dao->order('uid ASC')->limt($p->firstRow.','.$p->listRows)->select();
//赋值
$this->assgin('page',$page);
$this->assgin('list',$list);
$this ->display();
}
语法说明
Page类需要两个初始化参数:数据总数和 每页显示数据数
实例化一个分页类后,调用show()方法显示输出分页类代码。在查询当前页面显示的数据是,使用了limit.
分页模板
操作对应的模板为:select,html.
<table border="1"> <tr> <th width="10%">ID</th> <th width="30%">用户名</th> <th width="30%">电子邮件</th> <th>注册时间</th> </tr> <volist name="list" id="vo"> <tr> <td align="center">{$vo['uid']}</td> <td>{$vo['username']}</td> <td>{$vo['email']}</td> <td>{$vo['regdate']|date="Y-m-d H:i",###}</td> </tr> </volist> </table> <div>{$page}</div>模板中将查出的用户数据以表格的形式列出,在表格底部输出分页代码