白癜风专家李从悠 http://www.zherpaint.com/ylbj/jkwh/m/2160.html文章讲解“模型-内置标签之定义标签”,本篇文章讲解“杂项-分页之分页实现”。一、分页实现ThinkPHP5.1内置了分页实现,要给数据添加分页输出功能变得非常简单。1.使用Db类实现分页1)使用Db类查询的时候调用paginate方法:①新建Index控制器,并新建dbpage方法②新建dbpage.html模板,并在模板中展示数据预览:2)单独赋值分页输出的模板变量①在ThinkPHP3版本时,分页模板与数据是单独分开的,在ThinkPHP5中也支持单独的分页模板。②在dbpage.html模板中,输出分页模板预览:注意:1.默认情况下,生成的分页输出是完整分页功能,带总分页数据和上下页码,分页样式只需要通过样式修改即可,完整分页默认生成的分页输出代码为:ullispan/span/lilispan1/span/liliahref=url?page=22/a/li/ul3)单独获取总数据数预览:2.模型的分页查询以上使用的是Db类的分页查询方式,也可以使用模型进行分页查询。①新建User模型,并新建getList方法,获取分页查询数据②在Index控制器中,新建modelpage方法,调用模型中的getList方法③新建modelpage.html模板,在模板中输出数据预览:注意:1.使用模型类实现分页与Db类实现分页相同,其中Db类可以获取的总页数、单独输出分页在模型类中依旧可以实现。3.传入总记录数支持传入总记录数而不会自动进行总数计算。①在Index控制器中,新建totalnum方法②新建totalnum.html模板,在模板中输出数据注意:1.对于UNION查询以及一些特殊的复杂查询,推荐使用这种方式首先单独查询总记录数,然后再传入分页方法。4.分页后数据处理支持分页类后数据直接each遍历处理,方便修改分页后的数据,而不是只能通过模型的获取器来补充字段。1)使用模型进行分页后数据处理①在Index控制器中,新建eachnum方法②新建totalnum.html模板,在模板中输出数据预览:2)使用Db类进行分页后数据处理如果是Db类操作分页数据的话,each方法的闭包函数中需要使用返回值。①在Index控制器中,新建dbeach方法预览:ThinkPHP5连载为卓象程序员原创,转载请联系卓象程序员
转载请注明:http://www.aierlanlan.com/rzfs/8779.html