thinkphp方便分页的page方法
2015-03-23 10:31
459 查看
page方法也是模型的连贯操作方法之一,是完全为分页查询而诞生的一个人性化操作方法。
$Article = M('Article');
$Article->limit('0,10')->select(); // 查询第一页数据
$Article->limit('10,10')->select(); // 查询第二页数据
复制代码
虽然利用扩展类库中的分页类Page可以自动计算出每个分页的limit参数,但是如果要自己写就比较费力了,如果用page方法来写则简单多了,例如:
$Article = M('Article');
$Article->page('1,10')->select(); // 查询第一页数据
$Article->page('2,10')->select(); // 查询第二页数据
复制代码
显而易见的是,使用page方法你不需要计算每个分页数据的起始位置,page方法内部会自动计算。
3.1版本以后,page方法也支持2个参数的写法,例如:
$Article->page(1,10)->select();
复制代码
和
$Article->page('1,10')->select();
复制代码
等效。
page方法还可以和limit方法配合使用,例如:
$Article->limit(25)->page(3)->select();
复制代码
当page方法只有一个值传入的时候,表示第几页,而limit方法则用于设置每页显示的数量,也就是说上面的写法等同于:
$Article->page('3,25')->select();
复制代码
用法
我们在前面已经了解了关于limit方法用于分页查询的情况,而page方法则是更人性化的进行分页查询的方法,例如还是以文章列表分页为例来说,如果使用limit方法,我们要查询第一页和第二页(假设我们每页输出10条数据)写法如下:$Article = M('Article');
$Article->limit('0,10')->select(); // 查询第一页数据
$Article->limit('10,10')->select(); // 查询第二页数据
复制代码
虽然利用扩展类库中的分页类Page可以自动计算出每个分页的limit参数,但是如果要自己写就比较费力了,如果用page方法来写则简单多了,例如:
$Article = M('Article');
$Article->page('1,10')->select(); // 查询第一页数据
$Article->page('2,10')->select(); // 查询第二页数据
复制代码
显而易见的是,使用page方法你不需要计算每个分页数据的起始位置,page方法内部会自动计算。
3.1版本以后,page方法也支持2个参数的写法,例如:
$Article->page(1,10)->select();
复制代码
和
$Article->page('1,10')->select();
复制代码
等效。
page方法还可以和limit方法配合使用,例如:
$Article->limit(25)->page(3)->select();
复制代码
当page方法只有一个值传入的时候,表示第几页,而limit方法则用于设置每页显示的数量,也就是说上面的写法等同于:
$Article->page('3,25')->select();
复制代码
相关文章推荐
- 用层实现长篇文章分页(用“scrollHeight”获得垂直滚动条的高度,用此值除以div层的高度,取整后就是总的页数。当用户查看某页时,便调用“showPage”方法,实现翻页效果。)
- WP Page Numbers – wordpress分页导航插件使用方法与教程
- dedecms教程:dede织梦内容页{dede:pagebreak/}分页标签修改方法
- Mybatis分页插件PageHelper正确的使用方法(网上有2篇不够科学的文章)
- Thinkphp搜索时首页分页和搜索页保持条件分页的方法
- PageDataSource手动分页方法
- thinkPHP使用post方式查询时分页失效的解决方法
- ThinkPHP数据分页Page.class.php
- ThinkPHP让分页保持搜索状态的方法
- 关于thinkphp中自带的分页类中setConfig("last","尾页")无效的解决方法
- thinkphp 一个页面使用2次分页的实现方法
- thinkphp 一个页面使用2次分页的方法
- dede分页标签惹的祸:pagebreak中的的方法
- 【php】thinkphp以post方式查询时分页失效的解决方法
- ThinkPHP让分页保持搜索状态的方法
- ThinkPHP3.1.2的DbOracle.class.php不能实现分页的解决方法
- Thinkphp分页时查询条件保存方法
- dede系统的pagebreak文章页面分页数量控制方法
- Mybatis分页插件PageHelper正确的使用方法(网上有2篇不够科学的文章)
- thinkphp3.2 分页方法和模板