Yii2中自带分页类实现分页

290 阅读1分钟

1.首先写控制器层

先引用pagination类

use yii\data\Pagination;

写自己的方法:

function actionFenye(){
        $data = Field::find();  //Field为model层,在控制器刚开始use了field这个model,这儿可以直接写Field,开头大小写都可以,为了规范,我写的是大写
        $pages = new Pagination(['totalCount' =>$data->count(), 'pageSize' => '2']);    //实例化分页类,带上参数(总条数,每页显示条数)
        $model = $data->offset($pages->offset)->limit($pages->limit)->all();
        return $this->renderPartial('fenye',[
            'model' => $model,
            'pages' => $pages,
        ]);
    }

2.model层就是直接用../yii/frontend/web/index.php?r=gii 生成的model

3.最后是显示页面

<?php
     use yii\widgets\LinkPager;
   ?>

<?php foreach($model as $key=>$val){ ?>
 
        <?= $val->Id; ?>     //相当于  <?php  echo $val['Id'];  ?>
        <?= $val->Field; ?>  //相当于  <?php  echo $val['Field'];  ?>

<?php } ?>

<?=
LinkPager::widget([
      'pagination' => $pages,
    ]);
?>

以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家需要戳这里PHP进阶架构师>>>视频、面试文档免费获取