激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - YII2框架中分頁組件的使用方法示例

YII2框架中分頁組件的使用方法示例

2020-06-08 14:21懷素真 PHP教程

這篇文章主要介紹了YII2框架中分頁組件的使用方法,結合實例形式詳細分析了YII2框架中分頁組件相關控制器、模型的創建及分頁實現方法,需要的朋友可以參考下

本文實例講述了YII2框架中分頁組件的使用方法。分享給大家供大家參考,具體如下:

當數據過多,無法一頁顯示時,我們經常會用到分頁組件,YII2中已經幫我們封裝好了分頁組件。

首先我們創建操作數據表的AR模型:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
 
namespace app\models;
 
use yii\db\ActiveRecord;
 
class MyUser extends ActiveRecord
{
  public static function tableName()
  {
    return '{{%user}}';
  }
}

然后創建分頁的控制器:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php
 
namespace app\controllers;
 
use YII;
use app\models\MyUser;
use yii\data\Pagination;
use yii\web\Controller;
 
class IndexController extends Controller
{
  public function actionIndex()
  {
    $name = YII::$app->request->get('name', '');
    $where = '1=1 ';
    $param = [];
 
    //如果查詢條件很多,可以按這種方式,拼where條件
    if (!empty($name)) {
      $where .= "AND name=:name";
      $param = array_merge($param, [':name' => $name]);
    }
 
    //設置分頁大小,為了演示,我寫成了2
    $pageSize = 2;
    $user = MyUser::find()->where($where, $param);
 
    //創建分頁組件
    $page = new Pagination([
      //總的記錄條數
      'totalCount' => $user->count(),
      //分頁大小
      'pageSize' => $pageSize,
      //設置地址欄當前頁數參數名
      'pageParam' => 'p',
      //設置地址欄分頁大小參數名
      'pageSizeParam' => 'pageSize',
    ]);
 
    //獲取數據
    $data = $user->orderBy('id DESC')
      ->offset($page->offset)
      ->limit($page->limit)
      ->asArray()
      ->all();
 
    return $this->renderPartial('index', [
      'data' => $data,
      'page' => $page,
    ]);
  }
}

最后就是顯示數據分頁:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<!doctype html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>分頁顯示</title>
  <style>
    .page li {
      display: inline-block;
      border: 1px solid #ccc;
      border-radius: 3px;
      padding: 2px 3px;
    }
 
    .page li.active a {
      font-weight: bold;
    }
 
    .page li a {
      text-decoration: none;
    }
 
    .page li a, .page li span {
      color: #666;
    }
  </style>
</head>
<body>
  <ul>
    <?php foreach ($data as $item): ?>
      <li><?php echo $item['id']; ?>    <?php echo $item['name']; ?></li>
    <?php endforeach; ?>
  </ul>
  <?php
  echo \yii\widgets\LinkPager::widget([
    'pagination' => $page,
    'firstPageLabel' => '首頁',
    'lastPageLabel' => '尾頁',
    'nextPageLabel' => '下一頁',
    'prevPageLabel' => '上一頁',
    //設置class樣式
    'options' => ['class' => 'page'],
  ]) ?>
</body>
</html>

最后效果如下:

YII2框架中分頁組件的使用方法示例

希望本文所述對大家基于Yii框架的PHP程序設計有所幫助。

原文鏈接:https://www.cnblogs.com/jkko123/p/8668419.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 少妇一级淫片高潮流水电影 | 欧美国产精品一区二区 | 日韩黄网站 | 黄色网址免费在线 | 国产黄色一级大片 | 精品久久久久久成人av | 一区二区三区四区高清视频 | 欧美一级高潮片免费的 | 久久久入口 | 成人免费看视频 | av免费在线播放网址 | xxxxhdvideosex| 久久久久久久久久久高潮一区二区 | 精品国产91久久久久久久 | 性 毛片| 国产成人在线免费视频 | 免费激情网址 | 丁香天堂网 | 天天草夜夜 | 免费永久看羞羞片网站入口 | 欧美一级特级 | 日韩精品一二三 | 福利在线免费 | 少妇一级淫片免费放4p | 在线免费观看精品 | av电影网在线观看 | 欧洲精品视频在线观看 | 国产精品久久久久久久久久久久午夜 | 在线成人一区 | 精品久久久久久国产 | 国产午夜精品久久久久久免费视 | 7777网站| 久久国产一级片 | 欧美a视频在线观看 | 欧美日韩在线视频一区 | 欧美日日操 | 调教小男生抽打尿孔嗯啊视频 | 圆产精品久久久久久久久久久 | 蜜桃网站在线观看 | 国产一区二区不卡视频 | 亚洲精品aa|