您现在的位置是:网站首页>软件开发>开发终端>thinkphpthinkphp

分页概述

风口下的猪2019-06-09thinkphp

简介

实现分页主要包括两个步骤:

1.将数据分页(在模型中操作,返回的是一个带有分页参数和相应方法这些分页信息的对象,主要使用paginate()方法);

2.显示分页条(这个主要在控制器和模板中实现,主要使用object->render()方法)。

一.数据分页,返回数据分页对象

ThinkPHP5.0内置了分页实现,要给数据添加分页输出功能在5.0变得非常简单,可以直接在Db类查询的时候调用paginate方法。用paginate()代替select()取数据表的所有数据。

例如:

$list = Db::name('user')->where('status',1)->paginate(10);

$list = User::where('status',1)->paginate(10);

二.显示分页条

分页条主要依靠render()

我们来看看render()返回的数据是什么

string '
<ul class="pagination">
<li class="disabled"><span>&laquo;</span></li> 
<li class="active"><span>1</span></li>
<li><a href="/thinkphp01/index.php/admin/tag/index.html?page=2">2</a></li>
<li><a href="/thinkphp01/index.php/admin/tag/index.html?page=3">3</a></li>
<li><a href="/thinkphp01/index.php/admin/tag/index.html?page=2">&raquo;</a></li>
</ul>' (length=342)

原来object->render()输出的是一段关于分页的ul和li代码。代码中我们可以清楚地看见有分页条涉及的“页数、上一条、下一条图标”等信息。

所以我们直接在模板中使用render()执行的结果即可。

1.在模板中直接使用

{$list->render()}或者将其放在div中通过控制div得样式来控制分页条的位置、样式(这是实际项目中常用的,因为分页条的样式要根据项目要求改嘛)

2.将分页结果赋值给模板变量,然后在模板中调用

$list = User::where('status',1)->paginate(10);

// 获取分页显示

$page = $list->render();

// 模板变量赋值

$this->assign('list', $list);

$this->assign('page', $page);

// 渲染模板输出

return $this->fetch();

 

注意:在项目开发中如果前端框架使用的是bootstrap,直接给外div定义分页类样式,在内部放模板变量即可。

例如:

<div class="pagination pagination-sm pull-right">

{$page}//或者{$list->render()}

</div>

很赞哦! (0)

  • 软件开发
  • 素质要求
  • 计算机基础
  • 架构
  • 安全
  • 性能
  • 运维
  • 尾页
  • 数据库
  • 开发终端
  • 语言基础
  • 项目管理
  • 产品设计
  • 系统
  • 工作规范
  • 计算机网络
  • 前端技术栈
  • 数据结构
  • 计算机组成原理
  • 后端技术栈
  • 性能优化
  • 安全设计
  • 常见模块
  • 计算机操作系统
  • 服务器
  • python
  • MySQL
  • thinkphp
  • PHP
  • Java
  • JavaScript
  • Windows
  • Linux
  • 特效
  • indexedDB
  • vue
  • 淘宝联盟
  • Ionic
  • Angular
  • 微信小程序
  • 支付宝小程序
  • uni-app
  • css/sass/less
  • 支付
  • socket
  • 爬虫
  • web性能优化
  • 消息推送
  • CVM
  • sqlite
  • Redis
  • 前端基础
  • 基础
  • element
  • Nginx
  • yii2
  • /ponder/index.php/index/catelist/catelist/cateid/10.html

    相关阅读 (同一栏目)

    << /

    标签云

    站点信息

    • 文章统计:528篇
    • 移动端访问:扫码进入SQ3R