服务器之家

服务器之家 > 正文

Yii2中SqlDataProvider用法示例

时间:2021-03-02 16:28     来源/作者:懒人

本文实例讲述了Yii2中SqlDataProvider用法。分享给大家供大家参考,具体如下:

第一种方法:

?
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
$totalCount = Yii::$app->db->createCommand('SELECT COUNT(*) FROM posts WHERE publish=:publish', [':publish' => 1])
      ->queryScalar();
$dataProvider = new SqlDataProvider([
  'sql' => 'SELECT * FROM posts WHERE publish=:publish',
  'params' => [':publish' => 1],
  'totalCount' => $totalCount,
  //'sort' =>false, to remove the table header sorting
  'sort' => [
    'attributes' => [
      'title' => [
        'asc' => ['title' => SORT_ASC],
        'desc' => ['title' => SORT_DESC],
        'default' => SORT_DESC,
        'label' => 'Post Title',
      ],
      'author' => [
        'asc' => ['author' => SORT_ASC],
        'desc' => ['author' => SORT_DESC],
        'default' => SORT_DESC,
        'label' => 'Name',
      ],
      'created_on'
    ],
  ],
  'pagination' => [
    'pageSize' => 10,
  ],
]);
return $dataProvider;

第二种:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'columns' => [
      ['class' => 'yii\grid\SerialColumn'],
      [
        'label' =>"Name",
        'attribute' => 'tbl_column_name',
        'value'=>function($data){
          return $data["tbl_column_name"];
        }
      ],
      'title',
      'author',
      'created_on',
      ['class' => 'yii\grid\ActionColumn'],
    ],
]); ?>

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部